如果資料表本身並不內含自動地增編號的字段時,要怎麼做才能夠讓select查詢結果,額外增加自動遞增序號呢?我們提供下列五種方法供您參考:
1use2go
34/*方法一*/5
6select序號=(
select
count
(客戶編號)
from
客戶 as
liming
7where
liming.客戶編號
<=
chang.客戶編號),
8客戶編號,公司名稱
9from客戶
aschang
orderby1
;10go11
12/*
方法二: 使用sql server 2005 獨有的rank() over () 語法
*/13
select
rank()
over
(order
by客戶編號
desc
) as
序號,14
客戶編號,公司名稱
15from客戶;
16go
1718
/*方法三
*/19
select序號
=count(*
), liming.客戶編號, liming.公司名稱
20from
客戶 as
liming, 客戶as chang
21where
liming.客戶編號
>=
chang.客戶編號
22group
byliming.客戶編號, liming.公司名稱
23order
by序號;
24go
2526
/*方法四
27建立乙個「自動編號」的字段,然後將資料新增至乙個區域性暫存資料表,
28然後由該區域性暫存資料表中,將資料選取出來,最後刪除該區域性暫存資料表
29*/
30select序號
=identity
(int,1
,1),管道,程式語言,講師,資歷
31into
#liming
32from問券調查一;
33go
34select
*from
#liming;
35go
36drop
table
#liming;
37go
3839
/*40
方法五41
使用 sql server 2005 獨有的row_number() over () 語法
42搭配 cte (一般資料表表示式,就是 with 那段語法)選取序號2 ~ 4 的資料
43*/
44with排序後的圖書
as45
(select
row_number()
over
(order
by客戶編號
desc
) as
序號,46
客戶編號,公司名稱
47from
客戶)48
select
*from
排序後的圖書
49where序號
between
2and4;
50go
5152
53
如何讓SELECT 查詢結果額外增加自動遞增序號
圖表1 如果資料表本身並不內含自動地增編號的字段時,要怎麼做才能夠讓select查詢結果如圖表 1所示,額外增加自動遞增序號呢?我們提供下列五種方法供您參考 use北風 go 方法一 select序號 select count 客戶編號 from 客戶as liming where liming.客...
讓SELECT 查詢結果額外增加自動遞增序號
use 北風 go 方法一 select 序號 select count 客戶編號 from 客戶 as liming where liming.客戶編號 chang.客戶編號 客戶編號,公司名稱 from 客戶 as chang order by 1 go 方法二 使用sql server 200...
如何讓SELECT 查詢結果額外增加自動遞增序號
圖表1 如果資料表本身並不內含自動地增編號的字段時,要怎麼做才能夠讓select查詢結果如圖表 1所示,額外增加自動遞增序號呢?我們提供下列五種方法供您參考 use北風 go 方法一 select序號 select count 客戶編號 from 客戶as liming where liming.客...