[英]Delete query with inner join
DELETE `contact`
FROM `contact` ct
INNER JOIN `contact_user` cu ON cu.contact_id=ct.id
WHERE ct.id=4 && ct.block_id=5671 && cu.user_id=1
致命:SQLSTATE [42S02]:未找到基表或視圖:1109 MULTI DELETE中的未知表“聯系人”; SQL:從
contact
ct內聯接中刪除contact
contact_user
cu ON cu.contact_id = ct.id WHERE ct.id = 4 && ct.block_id = 5671 && cu.user_id = 1
由於您已經為表contact
定義了Alias name
,因此您需要使用別名而不是原始表名。 嘗試這個
DELETE ct
FROM contact ct
INNER JOIN contact_user cu
ON cu.contact_id = ct.id
WHERE ct.id = 4
AND ct.block_id = 5671
AND cu.user_id = 1
或刪除contact
表的別名
DELETE contact
FROM contact
INNER JOIN contact_user cu
ON cu.contact_id = contact.id
WHERE contact.id = 4
AND contact.block_id = 5671
AND cu.user_id = 1
因為您已經為表定義了別名,所以應該使用它。 同時更換&&
與and
。
DELETE `ct` --`contact`
FROM `contact` ct
INNER JOIN `contact_user` cu ON cu.contact_id=ct.id
WHERE ct.id=4 and ct.block_id=5671 and cu.user_id=1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.