我在sql server中有大约30-45百万行的数据。
使用order by子句对此数据进行排序大约需要一个小时或更长时间。有没有办法在不使用order by子句的情况下进行排序。
答案 0 :(得分:1)
我认为您应该将索引用于您用于排序的字段。这可以提高速度。
答案 1 :(得分:1)
首先,检查索引。如果数据库花了这么长时间来完成这么简单的操作,那显然是错误的,或者服务器太旧了。这些信息量是可以接受的(50,000,000行不是太多)。
您可以对外部程序中的数据进行排序,但它不如从数据库中进行排序(毕竟,这是为了做这类事情而设计的)。
http://www.sqlteam.com/article/sql-server-indexes-the-basics