select identity(int,1,1) as id , number from(
select number1 as number from tbname
union all select number2 from tbname
union all select number3 from tbname
order by number
)

解决方案 »

  1.   

    select identity(int,1,1) as id , number from(
    select number1 as number from tbname
    union all select number2 from tbname
    union all select number3 from tbname
    order by number desc
    )
    --不好意思
      

  2.   

    select id=(
    select count(*) from(
    select number1 from 表
    union all
    select number2 from 表
    union all
    select number3 from 表
    )a where number1>=a.number1)
    ,number=number1
    from(
    select number1 from 表
    union all
    select number2 from 表
    union all
    select number3 from 表
    )a order by id
      

  3.   

    --改一下别名
    select id=(
    select count(*) from(
    select number1 from 表
    union all
    select number2 from 表
    union all
    select number3 from 表
    )aa where number1>=a.number1)
    ,number=number1
    from(
    select number1 from 表
    union all
    select number2 from 表
    union all
    select number3 from 表
    )a order by id