【发布时间】:2022-01-29 15:33:23
【问题描述】:
我有三张桌子。一张表,有行驶距离
create table routes
(
slat int,
slng int,
dlat int,
dlng int,
distance int
);
一个带有站点的表
create table sites
(
id int,
name varchar(100),
lat int,
lng int
);
和技术人员的一张桌子
create table fse
(
id int,
name varchar(100),
lat int,
lng int
);
行驶距离表是根据 google API 请求动态填写的。所以如果有一个新站点或一个新的技术人员,所有新的旅行距离都由谷歌请求并存储到路由表中
当然也可能发生客户或技术人员离开的情况。在这种情况下,距离表中的条目即使不再使用也会保留在数据库中。
我想删除表中这些未使用的行。所以我正在寻找一个查询,它正在删除站点/fse 表中所有“不存在”的纬度/经度组合,就像在这个小提琴的评论中写的那样
https://www.db-fiddle.com/f/mwF1iyZ7nn8rnDcE8Wstch/0
我可以自己编写此查询,但我唯一的解决方案是使用非常多的子选择。但是我想知道是否没有更有效的方法,希望这里的一位 sql 专业人士可以提供帮助?
【问题讨论】:
标签: mysql