我的问题是:

DELETE p,p2,r
FROM Profiles p
LEFT JOIN Pics p2 ON p.ID=p2.ProfileID
LEFT JOIN Food f ON p.ID=f.ProfileID
WHERE p.ID = 46

此查询将删除用户的配置文件、Pics表中的所有图片以及food表中所有匹配的ProfileID。
这会让我
外形表中的ID 47,48
Pics表中的ID 66,67
ID 30、31、32、34在食物表中
但我希望它也删除Pics.ID ProfileID为46的所有行,所以Pics.ID为64和65。这两个id将从食物表中删除。其中包括Food.ID 30和32,只剩下:
ID 31,34在餐桌上
配置文件表:
ID Gender
46 male
47 female
48 female

Pics表:
ID ProfileID Position
64 46        1
65 46        2
66 47        1
67 48        1

餐桌:
ID PicID ProfileID
30 64    47
31 66    48
32 65    47
33 67    46
34 67    47

最佳答案

我想这就是你想要的

DELETE p,p2,f,f2
FROM Profiles p
LEFT JOIN Pics p2 ON p.ID=p2.ProfileID
LEFT JOIN Food f ON p.ID=f.ProfileID
LEFT JOIN Food f2 ON p2.ID=f2.PicID
WHERE p.ID = 46

关于mysql - SQL DELETE LEFT JOIN查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37410263/

10-16 00:26
查看更多