我的PostgreSQL数据库中有两个表,每个表包含一条路由,并且它们具有一些重叠的部分。我想将它们合并在一起,并根据重叠信息和路由质量信息(在表中分别列出)将其分为几个部分。
我尝试合并表,但是我仍然没有有关细分的信息。
我的桌子看起来像这样
表1:
id latitude longitude route_quality
1 47.948208 8.499215 1
2 47.948208 8.499313 1
3 47.948044 8.499697 2
4 47.948006 8.499986 2
5 47.94809 8.500163 1
6 47.948402 8.500023 1
7 47.949173 8.500094 1
8 47.949554 8.5001335 1
9 47.949623 8.500321 1
10 47.949207 8.502197 1
11 47.949104 8.5028515 1
表2:
latitude longitude route_quality
1 47.948208 8.499215 1
2 47.948208 8.499313 1
3 47.948044 8.499697 2
4 47.948006 8.499986 2
5 47.94809 8.500163 1
6 47.948402 8.500023 1
7 47.949173 8.500094 1
8 47.949555 8.5001336 3
9 47.949624 8.500322 3
10 47.949207 8.502197 1
11 47.949104 8.5028515 1
如您所见,我在路线质量上存在一些重叠和差异,我希望拥有这样的东西:
结果:
latitude longitude route_quality section
47.948208 8.499215 1 1 //overlapping
47.948208 8.499313 1 1 //overlapping
47.948044 8.499697 2 2 //overlapping but different route quality starts
47.948006 8.499986 2 2 //overlapping
47.94809 8.500163 1 3 //overlapping but different route quality starts
47.948402 8.500023 1 3 //overlapping
47.949173 8.500094 1 3 //overlapping
47.949554 8.5001335 1 4 //this is from Table1
47.949623 8.500321 1 4 //this is from Table1
47.949555 8.5001336 3 5 //this is from Table2
47.949624 8.500322 3 5 //this is from Table2
47.949207 8.502197 1 6 //overlapping starts
47.949104 8.5028515 1 6 //overlapping
我尝试过使用游标,合并,联合,但是一切都没有成功。任何建议都非常感谢。
这里是可视化部分的示例。每种颜色都是基于路径分叉和route_quality字段的不同部分。
谢谢。