zoukankan      html  css  js  c++  java
  • SQLSERVER的排序问题

    SQLSERVER的排序问题

    在论坛里经常有人问这样的问题:

    同一个查询的结果集为什麽有时候是按他想要的顺序排列,有时候又不是,或者是在SQL2000里是这个顺序,到了SQL2005/2008又是那个顺序?

    其实,只要语句里没有指定“order by”,SQLSERVER并不会按照顺序返回的。有可能你的表里有一个字段已经建立了索引

    你想结果集按照那个建立了索引的字段排序,那么你不指定“order by”是没有问题的,因为表的存储顺序就是按照那个字段

    的顺序排好序了,所以可以不指定“order by”,但是如果你没有在想排序的那个字段建立索引,或者在SQL2000里建立了

    索引,而在SQL2005/2008里没有建立索引,那么就要明确地用“order by”指定。如果你没有指定,哪怕一模一样的查询,

    结果集顺序这一次和上一次不一样是很正常的。


    语句已终止。
    消息 1105,级别 17,状态 2,第 3 行
    无法为数据库 'txuser' 中的对象 'dbo.SORT temporary run storage: 140737877245952' 分配空间,因为 'data_txuser_fg' 文件组已满。请删除不需要的文件、删除文件组中的对象、将其他文件添加到文件组或为文件组中的现有文件启用自动增长,以便增加可用磁盘空间。
    消息 1101,级别 17,状态 12,第 3 行
    由于文件组 'data_txuser_fg中的磁盘空间不足,无法为数据库 'mglog' 分配新页。请删除文件组中的对象、将其他文件添加到文件组或者为文件组中的现有文件启用自动增长,以便增加必要的空间。

  • 相关阅读:
    第九章 表单效验
    第八章 使用jQuery操作DOM
    第七章 jQuery中的事件与动画
    CDQZ Day2
    HDU 3783
    CDQZ Day1
    BZOJ 2935/ Poi 1999 原始生物
    Luogu P1801 黑匣子_NOI导刊2010提高(06)
    Intelligent Poetry
    Great Expectations
  • 原文地址:https://www.cnblogs.com/lyhabc/p/2842124.html
Copyright © 2011-2022 走看看