有五種方法:
一、需要用臨時表來實現
select IDENTITY(int, 1,1) AS ID_Num,* into #temp from 表
select * from #temp
Drop Table #temp
二、不用臨時表,就必須有排序列,值唯一,做參考:
select (select count(*) from yourtable where col
三、在原表中增加一列來實現
alter table yourtable add ID int identity
select * from yourtable
alter table yourtable drop column ID
四、 使用SQL Server 2005 獨有的RANK() OVER () 語法(測試 客戶編號 也應該值唯一才對)
SELECT RANK() OVER (ORDER BY 客戶編號 DESC) AS 序號, 客戶編號,公司名稱 FROM 客戶
五、
SELECT 序號= COUNT(*), a.客戶編號, b.公司名稱
FROM 客戶 AS a, 客戶AS b WHERE a.客戶編號>= b.客戶編號
GROUP BY a.客戶編號, a.公司名稱
ORDER BY 序號
有五種方法:
一、需要用臨時表來實現
select IDENTITY(int, 1,1) AS ID_Num,* into #temp from 表
select * from #temp
Drop Table #temp
二、不用臨時表,就必須有排序列,值唯一,做參考:
select (select count(*) from yourtable where col
三、在原表中增加一列來實現
alter table yourtable add ID int identity
select * from yourtable
alter table yourtable drop column ID
四、 使用SQL Server 2005 獨有的RANK() OVER () 語法(測試 客戶編號 也應該值唯一才對)
SELECT RANK() OVER (ORDER BY 客戶編號 DESC) AS 序號, 客戶編號,公司名稱 FROM 客戶
五、
SELECT 序號= COUNT(*), a.客戶編號, b.公司名稱
FROM 客戶 AS a, 客戶AS b WHERE a.客戶編號>= b.客戶編號
GROUP BY a.客戶編號, a.公司名稱
ORDER BY 序號