我有两个表要加入:tb_assets 和 tb_locations。位置是位置的层次结构。因此,可以将资产分配给“A 楼”,其父位置可能为“旧金山”,其父位置可能为“美国”
当我查询资产时,我想获取父名称以及该位置的父名称。
这是表格布局:
因此,使用以下内容,我可以轻松获取当前资产的父名称,但我已经使用了派生表和 CTE,但我似乎无法围绕正确的方法来完成此操作。
SELECT f_assetname, f_locationname
FROM tb_assets
LEFT JOIN tb_locations on f_assetlocationID = f_locationID
这是一些示例数据
tb_assets
f_assetID f_assetname f_assetlocationID
------------------------------------------------------
1 Building A 1
2 Building B 2
tb_locations
f_locationID f_locationname f_locationparentID
------------------------------------------------------
101 United States NULL
102 San Francisco 101
使用上面的 SQL,我们返回以下内容:
f_assetname f_locationname
----------------------------------------
Building A San Francisco
Building B San Francisco
我想要的输出是:
f_assetname f_locationname f_locationparentname
--------------------------------------------------------------
Building A San Francisco United States
Building B San Francisco United States
真诚地提前感谢任何帮助。
谢谢,比姆斯