我想知道是否有人知道如何解决以下问题。我已经找了大约一个星期的解决方案,但到目前为止,没有运气。
我们有一个网站,我们需要删除成千上万的城市,如果他们没有任何相关用户。
因此,基本上,如果表“用户”中不存在“城市ID”,我们必须删除表格“城市”。比方说,如果在“用户.城市id”列中找不到“城市.城市id”,则需要删除“城市”中的任何行,这意味着没有用户与该城市关联。
基本上需要发生的是,对于“城市”中的每一行,MySQL需要查看用户.CyySyID中的每一行,以查看该值是否存在,如果是,则移动到下一行,如果不是,则删除城市中的行,然后移动到下一行。
我甚至不确定这样的查询是否可行。。。任何建议都将不胜感激!

最佳答案

没有访问完整架构的权限,下面是我的尝试。在执行任何删除操作之前备份数据库,以防出现问题,我不想被起诉:(

DELETE FROM cities WHERE id NOT IN (SELECT city_id FROM USERS);

关于mysql - MySQL-如果任何表中都不存在另一个表中的值,则删除一个表中的行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10274279/

10-16 23:38