首页 > 解决方案 > 通过节点 ID 将管道属性提取到节点的 SQL 查询

问题描述

我有一个 GIS 水网络,其中节点与 1 个或多个管道连接。每个管道都有一个开始和结束的节点 ID(保存在管道表中的节点 ID 是节点名称和 GlobalID)。 附件中给出了有关如何连接系统的 GIS 图像。

我想在 SSMS 中运行一个查询,查找连接到给定节点的所有管道并返回这些管道的类别作为结果。注意:我不知道给定节点是作为管道的起始节点还是结束节点连接。

我尝试运行以下查询,但它非常慢,我认为它在逻辑上不正确。

SELECT s.GlobalId, s.TF_NODEID, s.NAME_NUMBER, s.REMARK, s.MAIN_FUNCTION, p.MAIN_FUNCTION
    FROM [WAT_NODE_evw] s
    LEFT JOIN [WAT_PIPE_evw] p ON s.NAME_NUMBER = p.START_NODE_1 OR s.NAME_NUMBER = p.START_NODE_2;

NAME_NUMBER指节点名称。MAIN_FUNCTION是我想为连接到给定节点的每个管道提取的属性。关于我如何做到这一点的任何建议?

标签: sqlsql-serverssmsarcgisarcmap

解决方案


推荐阅读