回答
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