mssql2008怎么在查询select的时候增加一列排序。 如:select id,A,B from tb ----A,B是tb的列id是自己添加

关键问题是,我要怎么添加id这个列,而且能按顺序1,2,3,4……;
多表连接的,不改变表的结构和数据。只在查询的时候添加临时列。
perneer你好,为什么不是从1开始呢。?

在SQL2005以上的版本,里面有一个专门你所要增加的列,试试哈

select * from (select row_number()over(order by 排序的字段)
as 自动序列,* from 表名) aa
where 自动序列>=1 and 自动序列 <20追问

为什么不是从1开始呢。?

追答

是从1开始的,只是你的 where 条件是从 >=70548 吧?

为操作方便你可以将你原来的SQL做为一个子查询,

像这样的操作方式
select * from (select id,name from tabname ) aa,tab2 where aa.id =tab2.id
注意 括号中的语句可以是一个有效的SQL语句,将它作为结果,操作方便,易于读写。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-07
在TB插入ID列,默认自增。。。
alter table tb add id int identity(1,1)
第2个回答  2011-04-07
order by id,A,B
相似回答