【发布时间】:2013-01-14 15:46:41
【问题描述】:
我想从这个基于reserveringsnr的查询中删除所有这些结果。
(SELECT DISTINCT res.reserveringsnr, datum, begintijd, eindtijd, aantalpersonen, klantnr, betaald, tafr.tafelnr, menr.reserveringsnr, menr.menunr, menr.uniqueid FROM reserveringen as res
INNER JOIN menus_regel as menr
ON res.reserveringsnr = menr.reserveringsnr
INNER JOIN tafels_regel AS tafr
ON res.reserveringsnr = tafr.reserveringsnr
WHERE res.reserveringsnr = '21')
但这样的事情似乎不起作用
DELETE FROM
(SELECT DISTINCT res.reserveringsnr, datum, begintijd, eindtijd, aantalpersonen, klantnr, betaald, tafr.tafelnr, menr.reserveringsnr, menr.menunr, menr.uniqueid FROM reserveringen as res
INNER JOIN menus_regel as menr
ON res.reserveringsnr = menr.reserveringsnr
INNER JOIN tafels_regel AS tafr
ON res.reserveringsnr = tafr.reserveringsnr
WHERE res.reserveringsnr = '21')Delete
WHERE Delete.reserveringsnr = '21'
任何人都可以将我推向正确的方向吗? 提前致谢!
【问题讨论】:
-
当您说要“删除所有这些结果”时,您是要从每个基础表中删除相关记录,还是只从其中一部分中删除?跨度>
-
delete from sometable where conditions IN (your select up there)?请注意,在 mysql 中,您无法更新/删除您也可以从中选择的内容。 -
一般来说,一次只能从一个表中删除,从子表开始。
标签: php mysql sql sql-delete