我有两个表,每个表都有一个点(空间)数据类型的列,如下所示:
表1:
id latlng
------------------------------
1 POINT(35.72036 51.42124)
2 POINT(32.74446 53.42124)
3 POINT(31.78676 51.44564)
4 POINT(32.73436 54.42124)
表2:
id latlng
------------------------------
1 POINT(35.719 51.4221)
2 POINT(35.72036 51.42124)
3 POINT(32.74446 53.42124)
4 POINT(31.78676 51.44564)
5 POINT(32.73436 54.42124)
6 POINT(35.72379 51.4144)
现在我想将这两个表与表2中的LEFT JOIN
语句一起加入
我写了这个查询,但它返回24行!我应该像表2那样是6行。
SELECT * FROM Table2 LEFT JOIN Table1 ON Table2.latlng = Table1.latlng
有什么方法可以解决这个问题吗?只需要6行?
答案 0 :(得分:1)
我想你忘记了GROUP BY
试试这个
SELECT * FROM Table2
LEFT JOIN Table1
ON Table2.latlng = Table1.latlng
GROUP BY Table2.id