我有一张这样的桌子:
LV1 | LV2 | LV3
A | B |C
X |Y |Null
我想添加一列以获得最低级别,
LV1 | LV2 | LV3 |Bottom
A | B |C |C
X |Y |Null |Y
我该怎么办? -我正在使用SQL Server
谢谢
最佳答案
使用CTE获得结果:
CREATE TABLE #table(LV1 VARCHAR(10) ,LV2 VARCHAR(10) , LV3 VARCHAR(10))
INSERT INTO #table(LV1 ,LV2 , LV3)
SELECT 'A','B','C' UNION ALL
SELECT 'X','Y',null
;WITH CTE (LV1 ,LV2 , LV3 , Bottom) AS
(
SELECT LV1 ,LV2 , LV3 , COALESCE(LV3,LV2,LV1)
FROM #table
)
SELECT * FROM CTE