我有一个名为'order'的数据库表,它通过一个外键引用另一个名为'delivery'的表。我需要删除某个日期之前修改的交付,但是我不能这样做,直到我删除引用它们的订单。从一个表中删除一个外键上的字段小于MySQL值
所以我需要删除订单,在某个日期之前交货被修改。我写在MySQL以下查询:
DELETE FROM `order`,`delivery` WHERE order.delivery_id = delivery.id AND delivery.modifiedOn < '2016-2-28 23:59:59'
但我发现了一个SQL错误:
1064 - 你在你的SQL语法错误;检查与您的MySQL服务器版本相对应的手册,以便在附近使用正确的语法:'WHERE order.delivery_id = delivery.id AND delivery.modifiedOn <'2016-'
我之前没有做过这种查询,我怀疑我需要使用JOIN的某处,但不知道在哪里 - 任何意见将不胜感激。
可能重复[如何从多个表中删除MySQL?](http://stackoverflow.com/questions/3331992/how-to-delete-from-multiple-tables-in-mysql) – Drew
因此, ,如果你想要的话,只需接受问题顶部的重复标注(对于多表删除,如果这是你的情况,我不确定它是如何的) – Drew
Jamie,以下是级联删除的一个简单示例[Here] (http://stackoverflow.com/a/32298405)...大约一半的答案是一个例子 – Drew