我可以执行以下连接来获取历史记录表中具有 Platform =“Vudu”的所有项目。
SELECT * FROM main_history History INNER JOIN main_iteminstance Instance
ON History.instance_id=Instance.id
WHERE platform_type_id='vudu'
但是,我找不到删除所有这些项目的简单方法。例如,执行以下操作:
DELETE from main_history h join main_iteminstance i on h.instance_id=i.id
WHERE platform_type_id='vudu'
如何在单个查询中基于外键在 Mysql 中进行删除?
最佳答案
你们非常非常接近:
DELETE h
-------^
FROM main_history h JOIN
main_iteminstance i
ON h.instance_id = i.id
WHERE platform_type_id = 'vudu';
MySQL 只需要知道要删除的表(或多个表)。
关于mysql - 基于外键删除条目的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41130858/