我的问题是
如何将列的值增加1。
例如,假设一列 ID
值为1,2,3,4 ,.
现在,当我更新此表时 ID
列应增加1,
现在ID
将变为2,3,4,5,..
Answers:
ISNULL
语句:(UPDATE myTable SET ID = ISNULL(ID, 0) + 1
取自该SO回答)
SET [Lic] = [Lic] + @dif
。注意@dif变量可以为正,0或负
在Oracle中,代码有些棘手。
您将必须使用sequence对象创建一个自动递增字段(此对象生成一个数字序列)。
使用以下CREATE SEQUENCE语法:
CREATE SEQUENCE seq_person
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10
上面的代码创建了一个名为seq_person的序列对象,该对象从1开始并以1递增。它还将最多缓存10个值以提高性能。高速缓存选项指定将在内存中存储多少序列值以加快访问速度。
要将新记录插入“人员”表,我们将必须使用nextval函数(该函数从seq_person序列中检索下一个值):
INSERT INTO Persons (ID,FirstName,LastName)
VALUES (seq_person.nextval,'Lars','Monsen')
上面的SQL语句会将新记录插入“人员”表中。将为seq_person序列中的下一个数字分配“ ID”列。“名字”列将设置为“ Lars”,“姓氏”列将设置为“ Monsen”。