我有三张表t1,t2和t3。 T1有我的第一点Sql Server 2008快递递归查询
--------------------------
| t1
--------------------------
| objectId, x, y <--(these are fields)
--------------------------
| 30536, 1364690.09169,16518759.7879
|
--------------------------
T2有我的几个折线这些都是端点他们
--------------------------
| t2
--------------------------
| objectId, from_x, from_y, to_x, to_y <--(these are fields)
--------------------------
| 43664, 1364815.8770, 16518764.8200, 1364806.6780, 16518760.9000
| 43665, 1364806.6780, 16518760.9000, 1364710.2130, 16518719.7700
| 43666, 1364710.2130, 16518719.7700, 1364709.4300, 16518720.3000
| 43667, 1364709.4300, 16518720.3000, 1364690.0920, 16518759.7900
| 43370, 1364843.6870, 16518667.7600, 1364815.8770, 16518764.8200
|-------------------------
T3有我的整条生产线的我的最后终点
--------------------------
| t3
--------------------------
| objectId, x, y <--(these are fields)
--------------------------
| 11191, 1364843.68657, 16518667.7589
|
--------------------------
我做舍入到小数点后两位,以便终点在某点或另一点匹配。 我需要做的是创建一些类型的递归查询来完成从开始到所有连接多段线到最终端点的行。现在一些折线并不总是从 - >到它可能是另一种方式 - >从像组合这样的类型开始。在这个例子中
线(30536 - > 43667 - > 43666 - > 43665 - > 43664 - > 43370 - > 11191),并达到我的最终目的地。所以我需要的是我的结果中的起点(30536)和终点(11191)。
我做了多个(最多3个)自我加入t2 – Fonzy
我试图帮助一个CTE –
不幸的是,有一些多段线是从 - >从 – Fonzy