今天碰到一个问题,是这样的。我需要查询一个表,查询结果如下id name pws
7   陈   123
12  林   123
13  吴   123而我想让他虚拟出一个表中没有的字段,并且自动给予编号,效果如下id 序号  name pws
7   1    陈   123
12  2    林   123
13  3    吴   123

解决方案 »

  1.   

    DECLARE @TB TABLE(id INT, name NVARCHAR(4), pws INT)
    INSERT @TB
    SELECT 7,  N'陈',  123 UNION ALL 
    SELECT 12,  N'林',  123 UNION ALL 
    SELECT 13,  N'吴',  123SELECT *,ID2=IDENTITY(INT,1,1) INTO # FROM @TBSELECT * FROM #DROP TABLE #
    /*
    id          name pws         ID2         
    ----------- ---- ----------- ----------- 
    7           陈    123         1
    12          林    123         2
    13          吴    123         3
    */
      

  2.   


    select c1
    into tb1
    from 
    (
    select '体育用品' as c1 
    union 
    select '户外运动' as c1 
    union 
    select '篮球' as c1 
    union 
    select '足球' as c1 
    union 
    select '帐篷' as c1 
    union 
    select '登山鞋' as c1 
    ) a
    select row_number() over (order by c1) as '序号',c1 from tb1
    drop table tb1