我有一个具有不同列(均带有数据)的表,我的问题是我想为每一行分配一个ID,但我不知道该怎么做。
我尝试使用游标,但是我没有任何条件来区分行,因为每行中的某些数据都会在其他行中。
我想做的事的例子:
TABLE RACE
___________
COLUMNS
___________
Circuit | Date | Pilots
Montmelo| 10/12| 24
Montmelo| 10/13| 24
Montmelo| 10/14| 24
Japan | 10/17| 23
这只是一个表的示例,我想要的是为每行添加一个ID,增加1
TABLE RACE
___________
COLUMNS
___________
Circuit | Date | Pilots | ID
Montmelo| 10/12| 24 | 1
Montmelo| 10/13| 24 | 2
Montmelo| 10/14| 24 | 3
Japan | 10/17| 23 | 4
希望您能理解我,对不起我的英语!
答案 0 :(得分:2)
@Jeyem,您可以使用ID
轻松添加ROW_NUMBER
列。像这样:
DECLARE @MyTable TABLE (Circuit varchar(20), Date VARCHAR(8), Pilots int)
INSERT INTO @MyTable
SELECT 'Montmelo', '10/12', 24 UNION ALL
SELECT 'Montmelo', '10/13', 24 UNION ALL
SELECT 'Montmelo', '10/14', 24 UNION ALL
SELECT 'Japan', '10/17', 23
SELECT *, ID=ROW_NUMBER()over(order by Date)
FROM
@MyTable
答案 1 :(得分:0)
Here是我的工作。事实证明,您可以使用IDENTITY来对这样的行进行计数。
就是这样:
ALTER TABLE RACE ADD id INT IDENTITY(1,1);
答案 2 :(得分:0)
尝试一下:-
ALTER TABLE RACE ADD id INT IDENTITY(1,1);
OR
select Circuit,Date,Pilots,ROW_NUMBER()OVER(ORDER BY (SELECT 1 )) as ID From RACE