[英]How can I delete rows where its foreign key is NULL?
我有兩個表,分別名為tab1
和tab2
。
tab1的主rimary key is price
而price is foreign key in tab2
並且on delete set null.
當我從tab2中存在的tab1中刪除primary key
之一時,相應的外鍵
設置為NULL。
現在,我想從tab2中刪除其外鍵為null的行。
我寫此查詢,但它不起作用。
delete from tab2 where price = null.
請幫我解決。
您不能使用=比較NULL。 您應該改用IS NULL
WHERE price IS NULL
在您習慣之前,NULL值可能令人驚訝。 從概念上講,NULL表示“缺少未知值”,並且與其他值的處理方式有所不同。 要測試NULL,不能使用算術比較運算符,例如=,<或<>。
但是,如果您已經on delete set null
使用on delete set null
,為什么不將其簡單地更改為on delete cascade
並為您省去手動刪除行的麻煩呢?
delete from tab2 where price is null
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.