回答
update table set col = null where col = 0
这是不可用的,因为如果我有比例如30列更多,我可以做什么?我写了所有的列名称。 – Nuisance 2016-11-17 12:36:11
@Nuisance如果你需要将30列更新为null,当它们为零时,你将不得不编写如上所示的代码。为什么不可用? – NimChimpsky 2016-11-17 23:15:34
UPDATE MYTABLE SET MYCOLUMN = NULL WHERE MYCOLUMN = 0
但你在所有列是什么意思?这将是更多的工作,最好你只是为每列创建单独的语句。也可以读取架构并在存储过程和EXEC中生成SQL,但我不建议这样做,因为我认为这是一次性工作,如果您经常这样做,那么设计中的某些内容是错误的。
是的,我的意思是所有的列..! – Marshal 2010-11-22 12:49:01
UPDATE MyTable
SET Col1 = NULLIF(Col1, 0),
Col2 = NULLIF(Col2, 0),
Col3 = NULLIF(Col3, 0)
WHERE (Col1 = 0
OR Col2 = 0
OR Col3 = 0)
如果是一次性工作,您总是可以从下面的语句中获取输出并执行它。
SELECT 'UPDATE '
+ OBJECT_NAME(OBJECT_ID)
+ ' SET '
+ sc.name
+ ' = NULL WHERE '
+ sc.name
+ ' = 0'
FROM sys.columns sc
INNER JOIN sys.types st ON st.system_type_id = sc.system_type_id
WHERE st.name IN ('bigint', 'int', 'smallint')
AND OBJECT_NAME(OBJECT_ID) = 'YourTable'
- 1. cudaMemset未能设置所有值为0
- 2. awk:仅当值为NULL时将列值设置为'0'
- 3. SQL - 更改NULL值设置为0
- 4. 如果变量为null,则用jQuery将该值设置为0?
- 5. 如何在JavaScript中将对象的所有值设置为null?
- 6. 如何将数组的所有项目值设置为0?
- 7. 将所有输入文本框的值设置为'0'
- 8. 在MySQL字段设置的所有值设置为0
- 9. MySQL查询将一个值设置为1,将所有其他值设置为0
- 10. sql将所有值设置为空
- 11. 在两个值都为0的情况下将值设置为NULL
- 12. 变化0 JavaScript数组值设置为NULL值
- 13. 使用jQuery将值设置为null
- 14. Doctrine 2将布尔值设置为null
- 15. 如何将外键值设置为'NULL'?
- 16. 将datetime字段的值设置为null
- 17. 将Doctrine实体值设置为NULL?
- 18. 将所有设置设置重置为默认值
- 19. 将双精度值设置为0
- 20. 当组中的任何值为0时,将组内的所有值设置为0
- 21. 设置Html.TextBox值设置为null
- 22. 有意将Spring bean设置为null
- 23. 如何将所有文件流varbinary(max)字段设置为NULL?
- 24. AutoMapper将目标上的所有属性设置为NULL
- 25. does RemoveFromVisualTree将所有子控件设置为null?
- 26. 在表中将所有列设置为`null`
- 27. 将所有空字符串属性设置为null
- 28. 如何将NULL值视为0从MySQL
- 29. 如何在PostgreSQL中将所有列的默认值设置为null
- 30. 将DataGridView的DataSource设置为null/false删除DataGridView的所有默认设置
那么这是哪一个呢?将NULL值设置为0,或将0值设置为NULL? – 2010-11-22 13:00:12
标题和身体是相反的问题。 – Jamie 2014-02-26 18:41:57