有一表:
年级 班级
初一 2班
初一 1班
初一 3班
我要的结果,
初一 3班
初一 1班
初一 2班
也就是表的记录完全倒序.

解决方案 »

  1.   

    select *,IDENTITY(int,1,1) as id
    into #
    from tabselect 年级,班级 
     from # order by id descdrop table #
      

  2.   


    --比較奇怪2005比較好弄有row_number
    select id=identity(int,1,1),* into # from T
    select * from # order by id desc
      

  3.   

    如果表有聚集索引,那可以直接select * from tab order by 年级 desc,班级 desc
      

  4.   

    declare @table table(grade varchar(10), class varchar(10))
    insert into @table
    select '初一','1班'
    union all
    select '初一','2班'
    union all
    select '初一','3班'select * from @table order by left(class,1) desc
    /*
    grade    class
    ------------
    初一 3班
    初一 2班
    初一 1班
    */
      

  5.   


    select * from tab order by 年级 ,班级 desc
      

  6.   


    --SQL2000用临时表:
    select px=IDENTITY(int,1,1),* into # from 表名select 年级,班级 from # order by px desc
      

  7.   

    有一表: 
    年级 班级 
    初一 2班 
    初一 1班 
    初一 3班 
    我要的结果, 
    初一 3班 
    初一 1班 
    初一 2班 
    也就是表的记录完全倒序.select * , px = identity(int,1,1) into temp from tbselect * from temp order by px desc
      

  8.   

    实际上我的要求是:
    原表T: 
    编号 年级 班级  
     1 初一 1班  
     2 初一 2班  
     3 初一 3班  
    我要到如下表#T: 
    编号 年级 班级
     3  初一 3班  
     2  初一 2班  
     1  初一 1班  
    我是要得到一个真正的表#T,而不是显示#T(select)的效果
      

  9.   


    --那这样。。
    select px=IDENTITY(int,1,1),* into # from 表名select 编号,年级,班级 into #t from # order by px desc
      

  10.   


    insert into T2 (编号,年级,班级)
    select 编号,年级,班级
    from T
    order by 编号 desc
      

  11.   

    select  编号,年级,班级
    into T2
    from T
    order by 编号 desc
      

  12.   

    select * into #T from T order by 编号 desc
      

  13.   


    select 年级,班级 from
    (
    select row_number() over(order by 年级) as row,* from [yourtable]
    ) as dt
    order by row desc
      

  14.   

    用个static游标从最下面的记录往前读
      

  15.   

    select  编号,年级,班级
    into #T
    from T
    order by 编号 desc