问题描述
对 sql 相当陌生。您可以对返回的记录进行排序,例如:
SELECT * FROM MyTable ORDER BY SalesPrice;
没有物理提取所有记录,清除表,然后按照自定义的顺序重新写入它们,有没有办法让数据库驱动程序按某些重要列或某些重要列重新排序数据库表中的物理数据键(例如“SalesPrice”)?
这对于包含许多记录或数据定期更改的表来说是不可取的,但在表相对静态的情况下作为维护操作可能更有意义。
使用 DAO 和 ODBC,不过我希望得到一个可能适用于各种数据库的通用答案。
解决方法
SQL 表表示无序 集。时期。嗯,这有一个细微差别,它们是聚集索引。因此,您可以安排以特定顺序存储数据。 但是,这并不能保证 select * from table
会按该顺序返回结果。
如果您担心此类查询的性能,您可以在 (salesprice)
上建立索引。然后在查询中使用 order by salesprice
。