如何在select语句中用order by 进行排序,但order by 的值相同的时候顺序应该是什么样的.我试了一下,不是初始顺序.
而且10G和8i的顺序也不一样,请大家帮忙解释一下.

解决方案 »

  1.   

    order by...默認是asc的--升序   要降序的話要寫成order by 列名 desc
    值相同的話就要根據你的需求再加一個條件了 
    比如  group by xxx order by xxx
    或者  group by xxx,xxx,xxx(可以多個) order by xxx(只能一個,不然沒反應的)
    順便問下
    你到底想干什么?
      

  2.   

    加一个order by 字段
    order by x, y 
      

  3.   

    具体情况是这样的。我做的是一个移植的项目,数据库是从8i移到10G,可是用相同的SQL文执行发现记录的顺序不同。
    经分析发现是ORDER BY所排序的字段如果为空的时候,顺序就会不同。
    如果不用ORDER BY的话顺序是相同的。所以我认为记录的原始顺序是相同的。
    而且我也没找到8I对空的排序规则,开始以为是ROWID,后来发现不是。
    客户想保持老系统的顺序。而且不想改数据,我现在就想知道8I是如何处理的,之后在把SQL文改了来模拟原来的顺序。
    如果哪位朋友能在ORACLE的官方网站或官方文档上找到无法做到的解释,也请告诉我。因为客户只接受ORACLE的官方网站或官方文档上的解释。
    知道的请告诉我吧,多谢大家了。