我的情况是这样的:
表A是不同系统的配置值的键(映射)。我正在创建一个配置面板,在TableA的查询中,结果将被SystemName过滤。
我的问题是我无法使用结果中显示的空/ null /值获取结果。这是必需的,因为UI正在根据此结果呈现标签和文本框。
TableB可能有也可能没有配置映射中所有键的值。
我想要这种格式的值(首先获取TableA中的所有值,然后填充TableB中的值并返回结果):
TableA
ID Name SystemName
1 Path1 SystemA
2 Path2 SystemA
3 Path3 SystemA
4 Path1 SystemB
5 Path2 SystemB
6 Path3 SystemB
TableB
ID TableAID Value
1 2 //Volumes/SomeDrive/SomeFolder
Result
ID Name TableAID SystemName Value
1 Path1 1 SystemA ''
2 Path2 2 SystemA //Volumes/SomeDrive/SomeFolder
3 Path3 3 SystemA ''
是否有一个简单的解决方案。
提前致谢
答案 0 :(得分:0)
SELECT ISNULL(TableB.ID, TableA.ID) AS ID,
TableA.Name,
TableA.ID as TableAID,
TableA.SystemName,
ISNULL(TableB.Value,'') AS Value
FROM TableA
LEFT OUTER JOIN TableB
ON TableA.ID = TableB.ID
答案 1 :(得分:-1)
是的,您使用外部联接而不是内部联接。