为了账号安全,请及时绑定邮箱和手机立即绑定

mysql 刪除沒有該條件的數據?從其他數據表更新該資數據的值到另一個數據表?

mysql 刪除沒有該條件的數據?從其他數據表更新該資數據的值到另一個數據表?

慕桂英3389331 2018-10-24 12:31:41
問題A數據表欄位為 post_idB數據表的欄位為 urlA跟B都有很多數據A跟B有些 post_id 跟 url 是相符的 ,有些是不相符的 (A跟B有關聯性的字段是 post_id 跟 url )如何把不相符的都刪除?只留下有關聯性的DELETE a, b FROM    `a`    JOIN `b` ON b.ID != a.post_id這樣卻失敗了....?mariaDB 報錯誤:#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'JOIN b ON b.ID != a.post_id' at line 3然後又說a, b 這一段是預期以外的符號?PS:我要刪的是兩個資料表,只要都有不符合就刪除該筆我確定有 SELECT 到非常多不相符的數據,也有相符的數據。a 的 post_id 有多個,例如b.ID 假如等於 123 那 a.post_id 有一個或多個123
查看完整描述

1 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

你应该先通过A left join B,清除掉A表。再使用B left join A清理掉B表。

或者使用inner join 取出。然后采用not in的方式去处理。当然这种方式效率更低。

另外,在执行delete操作前,请务必备份数据,避免造成不必要的损失。


查看完整回答
反对 回复 2018-10-24
  • 1 回答
  • 0 关注
  • 453 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信