在SQL数据库中查询Smart3D中pipeline的层级关系

Posted 数字化工程设计

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在SQL数据库中查询Smart3D中pipeline的层级关系相关的知识,希望对你有一定的参考价值。

在之前的文章《 》中,我们可以返回对象所在目录systempath的详细信息。
基于该函数,我们还可以进行一下拓展。
如下图:

从图中可以看出,system path的写法为"\"间隔。因此,我们可以尝试对该字符串进行split处理。
  • 下面首先需要新增split函数


摘自:

https://www.cnblogs.com/hantianwei/archive/2010/07/05/1771571.html

在SQL数据库中查询Smart3D中pipeline的层级关系

有了该函数之后,我们就可以对查询得到的字符串结果进行split处理。 

  • 下面我们基于上面的结果已经新建的split函数,完成创建视图

“select 

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',1) as path1, 

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',2) as path2,

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',3) as path3,

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',4) as path4,

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',5) as path5,

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',6) as path6,

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',7) as path7,

dbo.splitstring(dbo.REPORTGetHierarchyPathByChildOid(pipeline.Oid, 'SystemHierarchy') ,'\',7) as path8

,n1.ItemName as 'LineName', pipeline.Oid as 'LineOid'

from JPipelineSystem pipeline

join JNamedItem n1 on n1.Oid = pipeline.Oid



  • 保存视图后,新建查询

select * from ACV_PipelineSystemPath



基于如上方法,还可以对其他对象进行相关的查询操作。比如设备,电缆桥架托盘。

相关阅读





以上是关于在SQL数据库中查询Smart3D中pipeline的层级关系的主要内容,如果未能解决你的问题,请参考以下文章

Smart3D飞控&地方坐标系

Smart3D基础理论

如何在 Azure ADF Pipelines 中更改 ADF 接收器数据集 Parquet 文件数据类型

我可以在哪里放置 SQL 代码以在 AWS Data Pipeline 中删除表?

FlinkFlink SQL 读取 CSV 文件

smart3d生成点云需要三维模型吗