日韩天堂,国产精品久久久久久久久久一区,羞羞羞网站,自拍视频网站,久久亚洲欧美成人精品,桃花阁成人网在线观看

Hello! 歡迎來到小浪云!


如何通過單一語句刪除多張表中符合特定條件的記錄?


avatar
小浪云 2024-11-11 225

如何通過單一語句刪除多張表中符合特定條件的記錄?

通過單一語句實現(xiàn)多表刪除

本文將解決如何在sql語句中通過單一語句實現(xiàn)多表刪除。

問題

有一張dish表,一個dish_flavor表和一個setmeal_dish表。需要刪除dishid為51和52的所有記錄。但是,使用以下sql語句時,并沒有刪除相應(yīng)記錄:

delete dish, dish_flavor, setmeal_dish  from dish, dish_flavor, setmeal_dish   where dish.id = dish_flavor.id and dish.id = setmeal_dish.id and dish.id in (51, 52);
登錄后復(fù)制

原因

此語句本質(zhì)上等價于:

delete dish, dish_flavor, setmeal_dish  from     dish     join dish_flavor on dish.id = dish_flavor.id      join setmeal_dish on dish.id = setmeal_dish.id  where      dish.id in ( 51, 52 );
登錄后復(fù)制

由于第三張表中沒有符合條件的數(shù)據(jù),因此不會刪除任何記錄。內(nèi)連接要求三張表中都必須存在該id的記錄,才會刪除該記錄。

解決方案

如果希望當(dāng)有任何一張表中存在要刪除的id時就進行刪除,可以使用左連接:

DELETE dish, dish_flavor, setmeal_dish  FROM     dish      LEFT JOIN dish_flavor ON dish.id = dish_flavor.id     LEFT JOIN setmeal_dish ON dish.id = setmeal_dish.id WHERE     dish.id IN ( 51, 52 );
登錄后復(fù)制

這樣,即使第三張表中沒有數(shù)據(jù),前兩張表中的數(shù)據(jù)仍然會被刪除。

相關(guān)閱讀

主站蜘蛛池模板: 免费观看精品视频999 | 自拍网视频 | 婷婷六月激情 | 在线看欧美日韩中文字幕 | 性欧美bb| 欧美日韩精品一区二区三区四区 | 自拍偷拍片 | 亚洲欧美一区二区三区久久 | 亚洲羞羞视频 | 中文字幕一区二区三区久久网站 | 亚州免费一级毛片 | 国产网站免费在线观看 | 亚洲人成影院午夜网站 | 俄罗斯三级完整版在线观看 | 久久66久这里精品99 | 制服丝袜自拍偷拍 | 试看a级看一毛片二十分钟 色婷婷六月天 | 久久新 | 亚洲视频福利 | 国产精品99精品久久免费 | 丁香婷婷激情综合 | 五月婷婷电影网 | 伊人久久大香焦 | 国产精品资源在线观看 | 麻豆日韩区久久综合 | 国产视频 每日更新 | 亚洲天堂网在线观看视频 | 深爱五月综合网 | 最近在线字幕国语视频 | 在线成人精品国产区免费 | 色婷丁香 | 四虎影视精品 | 丁香综合五月 | 一级国产片 | 亚洲精品人成网在线播放影院 | 在线观看免费视频网站色 | 四虎网址大全 | 亚洲 成人 欧美 自拍 | 欧美 日韩 成人 | 亚洲成人伊人网 | 欧美日韩综合一区 |