堆表的在执行Select语句时的默认排序问题——发现问题


堆表的默认排序规则

一、提出问题:堆表的在执行Select语句时的默认排序问题

在数据库SQL 中,如果一张表既无主键又无索引,那么当执行Select语句查询时,默认的排序规则是如何的呢?

最近就碰到了这么一个问题,原来做系统的人对于出库单主表既没有建主键也没有建索引,现在在进行分页查询时,在查询界面中会丢失一部分数据,但数据真实存在数据库中。

现象如下面图1,图2.

第一页的截图:

                                                                            图1

第二页的截图:

                                                                           图2

注意以上图中的红色框中的单号,应该只在第一页中显示的单号,却又在第二页中显示了。

再来看一下数据库中的数据:

                                                                           图3

注意上图中的数据,182-91行数据应该排在最后,才是我们需要得到的结果,而现在按默认排序规则却排到了中间。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM