从所有表中删除有关用户的所有内容

Mal*_*xxl -2 php mysql join sql-delete

可能重复:
MySQL从多个表中删除行

我有5张桌子:

  • 会员
  • member_videos
  • member_photos
  • member_friends
  • member_pages

当我删除该成员时,我想从这些表中删除他的所有记录.member_id存在于所有表中.我这样做每个表有5个查询.我可以LEFT JOIN在一个查询中使用或类似的内容吗?

ibl*_*lue 6

是的你可以.

DELETE m, mv, mp, mf, mpp
FROM members AS m
LEFT JOIN member_videos  AS mv  ON mv.member_id = m.id
LEFT JOIN member_photos  AS mp  ON mp.member_id = m.id
LEFT JOIN member_friends AS mf  ON mf.member_id = m.id
LEFT JOIN member_pages   AS mpp ON mpp.member_id = m.id
WHERE m.id = 12
Run Code Online (Sandbox Code Playgroud)