我有2列的表具有相同的名稱case語句問題
ValueA ValueB ValueA
12 Yes
No NULL
20 Yes
0 No 0
3 No 3
邏輯是
- 時
ValueA
爲''
- 和
ValueB
是'No'
- 然後
ValueA
在第二列應爲''
(不是NULL
)
我寫了這個case語句,但它給了我NULL
,而不是''
Case when ValueB ='No' then convert(varchar(25), ValueA)
when ValueB ='No' and ValueA ='' then ''
else ''
end
即使我寫
Case when ValueB
when 'No' then convert(varchar(25), ValueA)
else ''
end
兩個上面的代碼給了我同樣的結果
哪有我在第二個ValueA列中替換或刪除NULL
和''
?
,我是真的懷疑你有2列具有相同名稱在同一個表 –
這是一個畸形的描述 - ValueA的第二個實例實際上是OP試圖實現的派生輸出。 – MatBailie