同时从2个表中删除

时间:2014-12-04 19:46:41

标签: php mysql

我在DB中有两个表

food

id  name  ... food_menu

food_drinks

food_id    drinks_id

food_menu等于drink_id。在页面上,我有一些食物旁边的按钮,当我点击它时,从表food中删除该食物。问题是我可以在同一查询中同时从food_drinks删除相关的drink_id吗?

这是我现在用来删除食物的。

if ($stmt = $con->prepare("DELETE FROM food WHERE id = ? LIMIT 1"))
{
    $stmt->bind_param("i",$id);
    $stmt->execute();
    $stmt->close();
}

else
{
    echo "ERROR: could not prepare SQL statement.";
}
$con->close();

1 个答案:

答案 0 :(得分:4)

您可以像这样一次从多个表中删除

DELETE f, fd
FROM food f
LEFT JOIN food_drinks fd on fd.drinks_id = f.food_menu
WHERE f.id = ?