堆表的默认排序规则
一、提出问题:堆表的在执行Select语句时的默认排序问题
在数据库SQL 中,如果一张表既无主键又无索引,那么当执行Select语句查询时,默认的排序规则是如何的呢?
最近就碰到了这么一个问题,原来做系统的人对于出库单主表既没有建主键也没有建索引,现在在进行分页查询时,在查询界面中会丢失一部分数据,但数据真实存在数据库中。
现象如下面图1,图2.
第一页的截图:
图1
第二页的截图:
图2
注意以上图中的红色框中的单号,应该只在第一页中显示的单号,却又在第二页中显示了。
再来看一下数据库中的数据:
图3
注意上图中的数据,182-91行数据应该排在最后,才是我们需要得到的结果,而现在按默认排序规则却排到了中间。