
場景:想合同單位為空的,取崗點的名稱,二級單位為空的,取合同單位的名稱,一級單位為空的,取二級單位名稱,把空白的全部補足,請問SQL能實作么。。。試了case when 好像不行。。。
uj5u.com熱心網友回復:
case when 絕對可以哦!請查看第一種case when 的寫法
select
case
when [合同單位] ='' then [崗點]
when [二級單位] ='' then [合同單位]
when [一級單位] ='' then [二級單位]
else 'sql 條件未寫全'
end
from tableName
uj5u.com熱心網友回復:
樓主的意思應該是下面這樣的吧?create table test2
( id int identity,
[合同單位] nvarchar(50),
[崗點] nvarchar(50),
[二級單位] nvarchar(50),
[一級單位] nvarchar(50)
)
--場景:想合同單位為空的,取崗點的名稱,二級單位為空的,取合同單位的名稱,一級單位為空的,取二級單位名稱,把空白的全部補足,請問SQL能實作么。。。試了case when 好像不行。。
delete test2
insert into test2( [合同單位] , [崗點] , [二級單位] , [一級單位])
values(N'[合同單位]' , N'[崗點]' , N'[二級單位]' , N'[一級單位]')
insert into test2( [合同單位] , [崗點] , [二級單位] , [一級單位])
values( null , N'[崗點]' , N'[二級單位]' , null)
select id, [崗點] , COALESCE([合同單位] , [崗點]) [合同單位] ,COALESCE([二級單位],[合同單位]) [二級單位], COALESCE([一級單位],[二級單位]) [一級單位]
from test2
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/103292.html
標籤:疑難問題
上一篇:如何把EXEC(@SQL)得到的結果集(列是動態的)插入到一張臨時表
下一篇:為什么執行不了
