D0u*_*le0 3 sql sql-server isnull sql-server-2008 sql-update
我试图将名为"Number"的列字段的值递增1,如果该值当前为Null,我想将该值设置为1,因为Null值不能递增.我发现了isNull()函数,并且没有使用以下语句获得结果:
Update SomeTable set Number = IsNull(Number, Number+ 1) where
ItemCode = '000000' ;
Run Code Online (Sandbox Code Playgroud)
我的问题基本上是如何以1的增量同时更新字段值,如果当前为"NULL"则将值设置为1
谢谢!
Pரத*_*ீப் 13
Number从ISNULL功能的第二个参数中删除.
任何事情+ NULL = NULL
所以在ISNULL结果0时生成结果NULL,然后添加1到结果中
Update SomeTable set Number = IsNull(Number, 0) + 1 where
ItemCode = '000000' ;
Run Code Online (Sandbox Code Playgroud)
要么
Update SomeTable set Number = IsNull(Number+1, 1) where
ItemCode = '000000' ;
Run Code Online (Sandbox Code Playgroud)
或两个不同的更新(不推荐)
Update SomeTable set Number = Number + 1 where
ItemCode = '000000' AND Number IS NOT NULL;
Update SomeTable set Number = 1 where
ItemCode = '000000' AND Number IS NULL;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26330 次 |
| 最近记录: |