Access 的top和order by 的問題

今天用Access做sql查詢的時候出現了比較奇怪的問題:用:select top 10 * from news where Ischeck=1 order by looknum desc卻返回 大於 10 行的記錄,根據理論應該是返回 按 looknum排序後的前10個記錄。可是在Access中卻顯示大於 10 行的記錄。原來Access把按looknum進行排序,當looknum的某些記錄相等時,access所處的位置相同(就像體育比賽中的並列第一),而進行排序,Access會把前10個位置進行排序,而不是排序的前10個記錄。解決方法:在orderby 後加入 其他唯一值的記錄名。例如: select top 10 * from news where Ischeck=1 order by looknum,ID desc這樣就沒事了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章