警惕SQL中間的NULL
警惕SQL中間的NULL
select * from dual where null like '%*%'
no record found.
在做一個資料處理的應用的時候,因為忽略了這個,導致資料被多多處理了。
一下是出問題的SQL:
update CR_VIP_BKG_VIEW_LOAD d
set d.total_cntr_qntt = null,
d.total_cntr_qntt_20 = null,
d.total_cntr_qntt_40 = null,
d.total_cntr_qntt_40_hq = null,
d.total_cntr_qntt_45_hq = null,
d.total_cntr_qntt_other = null
where rowid not in
(SELECT MAX(ROWID)
from CR_VIP_BKG_VIEW_LOAD d
WHERE (d.cntr_check_digit not like '%*%' or
d.cntr_check_digit is null)
GROUP BY d.bkg_num, d.svc_prod_comp_id);
紅色的謂詞是改正之後的。因為缺失了對NULL的處理以及 NOT IN的條件,導致update語句更新了多於預期的資料條數,導致了bug.
寫在這裡是為了供日後更好的參考
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014873/viewspace-2868094/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL 查詢中的 NULL 值SQLNull
- 【SQL】17 SQL 檢視(Views)、SQL Date 函式、SQL NULL 值、SQLView函式Null
- merge sql error, dbType sqlserver, druid1.1.10, sql : nullSQLErrorServerUINull
- [20180808]Null value to Dynamic SQL.txtNullSQL
- SQL Server中的日期和時間:DATEADD()SQLServer
- MySQL中IS NULL、IS NOT NULL、!=不能用索引?胡扯!MySqlNull索引
- 面試題((A)null).fun()——java中null值的強轉面試題NullJava
- SQL 獲取SQL Server中兩個日期之間的所有日期SQLServer
- SQL語句中聚合函式忽略NULL值的總結SQL函式Null
- 去除陣列中的 null 值陣列Null
- C++中的NULL和nullptrC++Null
- JavaScript中的“undefined、null”區別?JavaScriptUndefinedNull
- 異常:java.sql.SQLIntegrityConstraintViolationException: Column 'category' cannot be nullJavaSQLAIExceptionGoNull
- 【SQL】18 SQL NULL 函式、SQL 通用資料型別、SQL 用於各種資料庫的資料型別SQLNull函式資料型別資料庫
- javascrit中undefined和null的區別JavaUndefinedNull
- js中null和undefined的區別JSNullUndefined
- js中undefined和null的區別JSUndefinedNull
- mysql中null與“空值”的坑MySqlNull
- Shell指令碼中的 /Dev/Null 用途指令碼devNull
- 復工進行時:警惕重保期間的emotet病毒郵件
- JavaScript中0, "", null, false, undefined的區別JavaScriptNullFalseUndefined
- javascript中null是什麼JavaScriptNull
- 警惕!Python 中少為人知的 10 個安全陷阱!Python
- 警惕Apache 共享資源文字中的關鍵新漏洞Apache
- Excel資料匯入Sql Server,部分數字為NullExcelSQLServerNull
- [20210205]警惕toad下優化直方圖相關sql語句.txt優化直方圖SQL
- JS中判斷null、undefined與NaN的方法JSNullUndefinedNaN
- Python中none和null的區別詳解!PythonNoneNull
- 在 React 16 中從 setState 返回 null 的妙用ReactNull
- C#中檢查null的語法糖C#Null
- 警惕位移運算<<的坑
- 【SQL】SQL中if條件的使用SQL
- sql 統計多個欄位的和(如果欄位中含有 null 的處理)SQLNull
- MYSQL timestamp NOT NULL插入NULL的報錯問題MySqlNull
- 2>/dev/null和>/dev/null 2>&1和2>&1>/dev/null的區別devNull
- c# 實現定義一套中間SQL可以跨庫執行的SQL語句C#SQL
- 【TUNE_ORACLE】檢視Oracle的壞塊在空閒空間中還是在已用空間中的SQL參考OracleSQL
- Java 中關於 null 物件的容錯處理JavaNull物件