我有以下情况:
Table1 has a list of companies.
Table2 has a list of addresses.
Table3 is a N relationship of Table1 and Table2, with fields 'begin' and 'end'.
由于公司可能随时间迁移,它们之间的LEFT JOIN结果会为每个公司产生多条记录。
begin
和end
字段永远不会为空。找到最新地址的解决方案是使用ORDER BY being DESC
,并使用LIMIT 1
删除旧地址。
如果查询只能带来1个公司,那就很好用。但我需要一个查询,将所有Table1记录与它们当前的Table2地址连接起来。因此,过时数据的删除必须在LEFT JOIN的ON子句中完成(据我所知)。
有什么办法可以构建这个子句,以避免创建重复的Table1公司并带来最新的地址?