Heim  >  Artikel  >  Datenbank  >  为什么:SQLServer 查询结果集,每次的顺序都不同?

为什么:SQLServer 查询结果集,每次的顺序都不同?

WBOY
WBOYOriginal
2016-06-07 15:25:041946Durchsuche

@Cornelius: 对于数据库引擎来说,他是没有办法知道先和后这个差别的。 你所谓的先后,可能是根据记录插入的时间。如果是这样的话,通常我是有一个专用字段来保存创建时间的, 以前还有人根据自增ID来排序,但长大以后发现那也是Too young too simple。因为

@Cornelius: 对于数据库引擎来说,他是没有办法知道先和后这个差别的。

你所谓的先后,可能是根据记录插入的时间。如果是这样的话,通常我是有一个专用字段来保存创建时间的,

以前还有人根据自增ID来排序,但长大以后发现那也是Too young too simple。因为自增ID达到最大值以后,数据库引擎是会取出以前没有用过的值来当ID的,所以这个也不保险。

总之,不要想当然,电脑不是人,就算是人,其实默认也是有个字段的,就是所谓的先后,

这个先后,数据库引擎如何知道,要么就要有一个隐藏的字段(你看不到)来表示,

而现代的数据库引擎认为数据是无序的,你需要顺序是吗?请设计一个字段来保存,谢谢!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn