我试图将select语句或insert语句插入到另一个表中,我将序列添加到第一列。
请参阅以下内容:
create table test (
nm varchar(20),
age decimal(38,12));
insert into test values ('Albert',20),('Ben',10),('Charles',30)
我正在尝试运行查询,当我这样做时:
select
##some kind of sequence function## as seq,
nm,
age
from test
我回来了:
seq nm age
1 Albert 20
2 Ben 10
3 Charles 30
此外,我希望能够将起始编号设置为序列,因此我可以将其设置为50,序列将显示51,52,53等。
谢谢
答案 0 :(得分:1)
select 50+row_number() over (order by nm) as rnum,
nm,age from test
答案 1 :(得分:0)
您可以使用IDENTITY:
CREATE TABLE test
(
id INT IDENTITY (50,1),
nm VARCHAR(20) ,
age DECIMAL(38, 12)
);
INSERT INTO test
VALUES ( 'Albert', 20 ),
( 'Ben', 10 ),
( 'Charles', 30 )
那会给你:
id nm age
---------------------------
50 Albert 20.000000000000
51 Ben 10.000000000000
52 Charles 30.000000000000