为具有相似列的两个表创建视图
Create view for two tables that have similar column
我有2张桌子。
tableOne
有列 Id, SN, SyN, SSN, APU
这里有 3 个示例行:
Id SN SyN SSN APU
----------------------------
'1' 'a' 'a' 'a' 'a'
'2' 'b' 'b' 'b' 'b'
'3' 'c' 'c' 'c' 'c'
tableTwo
有列 Id, Uri, MAM
示例数据:
Id Uri MAM
--------------------
'4' 'aa' 'aa'
'5' 'bb' 'bb'
我正在尝试创建一个将 Id 列合并为一列的视图,并具有如下所示的视图:
Header:
Id | SN | SyN | SSN | APU | Uri | MAM
--------------------------------------------
1 | a | a | a | a | null | null
2 | b | b | b | b | null | null
3 | c | c | c | c | null | null
4 | null | null | null | null | aa | aa
5 | null | null | null | null | bb | bb
这是我的:
SELECT *
FROM CIR.BusinessApplication AS BA
FULL OUTER JOIN CIR.NetworkAddressableDevice AS NAD
ON BA.Id = NAD.Id
如果代码是运行,它基本上是并排放置两个表。我也尝试了 "CREATE VIEW CIR_REPORT AS" 和代码,但我收到了一些错误。
您将无法使用 SELECT *
创建视图,因为这两个表都有一个名为 ID
的字段,您可以使用 COALESCE()
作为 ID
字段,因为两者并不总是被填充,那么只需列出其他字段:
SELECT COALESCE(BA.ID,NAD.ID) AS ID
,SN ,SyN ,SSN ,APU ,Uri ,MAM
FROM CIR.BusinessApplication AS BA
FULL OUTER JOIN CIR.NetworkAddressableDevice AS NAD
ON BA.Id = NAD.Id
这是唯一跳出的错误,如果还有其他错误请将它们添加到您的问题中。
你只需要更好地定义你的select
。
SELECT ISNULL(BA.Id, NAD.Id) as ID, SN, SyN, SSN, APU, Uri, MAM
我有2张桌子。
tableOne
有列Id, SN, SyN, SSN, APU
这里有 3 个示例行:
Id SN SyN SSN APU
----------------------------
'1' 'a' 'a' 'a' 'a'
'2' 'b' 'b' 'b' 'b'
'3' 'c' 'c' 'c' 'c'
tableTwo
有列Id, Uri, MAM
示例数据:
Id Uri MAM
--------------------
'4' 'aa' 'aa'
'5' 'bb' 'bb'
我正在尝试创建一个将 Id 列合并为一列的视图,并具有如下所示的视图:
Header:
Id | SN | SyN | SSN | APU | Uri | MAM
--------------------------------------------
1 | a | a | a | a | null | null
2 | b | b | b | b | null | null
3 | c | c | c | c | null | null
4 | null | null | null | null | aa | aa
5 | null | null | null | null | bb | bb
这是我的:
SELECT *
FROM CIR.BusinessApplication AS BA
FULL OUTER JOIN CIR.NetworkAddressableDevice AS NAD
ON BA.Id = NAD.Id
如果代码是运行,它基本上是并排放置两个表。我也尝试了 "CREATE VIEW CIR_REPORT AS" 和代码,但我收到了一些错误。
您将无法使用 SELECT *
创建视图,因为这两个表都有一个名为 ID
的字段,您可以使用 COALESCE()
作为 ID
字段,因为两者并不总是被填充,那么只需列出其他字段:
SELECT COALESCE(BA.ID,NAD.ID) AS ID
,SN ,SyN ,SSN ,APU ,Uri ,MAM
FROM CIR.BusinessApplication AS BA
FULL OUTER JOIN CIR.NetworkAddressableDevice AS NAD
ON BA.Id = NAD.Id
这是唯一跳出的错误,如果还有其他错误请将它们添加到您的问题中。
你只需要更好地定义你的select
。
SELECT ISNULL(BA.Id, NAD.Id) as ID, SN, SyN, SSN, APU, Uri, MAM