考虑以下代码:
SELECT s, COUNT(*)
FROM p
GROUP BY s;
Run Code Online (Sandbox Code Playgroud)
我是否应该期望记录相对于s进行排序?以我的经验,在Access 2007中,该命令似乎暗示了一个顺序。
使用SQL时,绝对不要做这种假设。总是最好添加一个显式的ORDER BY:
order by s
Run Code Online (Sandbox Code Playgroud)
这是因为SQL(语言)不保证结果集的顺序为no ORDER BY。
也就是说,MS Access将按顺序返回结果,因为我认为它只有一种计算算法ORDER BY-对列表进行排序。
但是,肯定还有其他算法。例如,SQL Server具有基于哈希的算法和并行算法。
因此,您不妨学习如何编写正确的查询。
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |