+ -
当前位置:首页 → 问答吧 → 关于数据排序.很简单的问题.

关于数据排序.很简单的问题.

时间:2011-12-08

来源:互联网


关于数据排序.很简单的问题.

有两个数据列

如下

姓名 年龄
小鸣 20
凤姐 14
犀利 25
小红 11



如何控制排序方式 从下至上读取. 默认是 从上网下读取的. 前提条件是不加流水Id等排序字段.

作者: gg13999   发布时间: 2011-12-08

不加流水Id等排序字段
那不会了,等高手

作者: pengxuan   发布时间: 2011-12-08

应该可以把 就是把默认的排序方式颠倒一下.

作者: gg13999   发布时间: 2011-12-08

排序只有order by ,order by 总得找个字段,你现有的字段数据都不能保证可以倒序排列
为什么不可以加流水Id字段

作者: pengxuan   发布时间: 2011-12-08

加流水字段当然可以解决.  

 我只是想研究下有没别的解决办法. 如果要加流水字段 我有N多表要加. 当时设计没有考到到排序方式.

作者: gg13999   发布时间: 2011-12-08

那没有办法了,必须要加了

作者: pengxuan   发布时间: 2011-12-08

可以查询的时候动态生成id,不需要在物理表上加字段

作者: pengxuan   发布时间: 2011-12-08

查询时候生成 和物理表上加 效率哪个高.

作者: gg13999   发布时间: 2011-12-08

你的那个"从上往下",是个什么次序呢?
如果你不排序,那个次序是不确定的.
如果一定要这样做,可以用 row_number()over(order by (select 1))在查询时生成一个序列号,并以此序列排序.

作者: qianjin036a   发布时间: 2011-12-08

没次序就是默认的
SQL code

SELECT * FROM [table]



就是让显示的结果反过来. 说白了就是倒序 没有流水ID的情况下倒序.

作者: gg13999   发布时间: 2011-12-08

SQL code


SELECT row_number()over(order by (select 1)) as rownum ,*
  FROM [table]  order by rownum desc




这样解决了.
还疑惑的就是 数据量特别大的时候 还好使不? 实在不行就加流水字段了.

作者: gg13999   发布时间: 2011-12-08