我想顯示空白而不是表達式字段的零值。如果exp是INT數據類型。每當我嘗試使用(當exp1爲0的情況下,則'else exp1以exp1結束),但它仍然作爲輸出獲得0。謝謝用空格替換0
用空格替換0
回答
如果exp
是一個數字類型,您需要使用CAST
or CONVERT
將其轉換爲字符串。另外,我不相信exp1 is 0
會工作;我想你正在尋找exp1 = 0
。
嘗試像這樣的:
(case when exp1 = 0 then '' else cast(exp1 as varchar(30)) end) as exp1
(case when exp1 = 0 then '' else convert(varchar(30), exp1) end) as exp1
或使用簡單的CASE
表達式,像這樣:
(case exp1 when 0 then '' else cast(exp1 as varchar(30)) end) as exp1
(case exp1 when 0 then '' else convert(varchar(30), exp1) end) as exp1
注:CAST
和CONVERT
爲varchar
和nvarchar
默認長度爲30,所以cast(exp1 as varchar)
或convert(varchar, exp1)
也可以工作,但作爲實踐,最好在每次使用t時指定這些類型的長度下襬。
但是,如果你寧願做的是0值轉換爲null
,這也很容易。只需使用NULLIF
:
nullif(exp1, 0) exp1
這將返回NULL
如果exp1
計算結果爲0,否則將返回的exp1
值。當您將此值插入表格時,請確保您插入的列是可以爲空的。如果您不熟悉使用null,請參閱主題上的Wikipedia article以獲取更多信息。
[請不要懶惰關於varchar與varchar(n)](http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/09/bad-habits-to -kick-declaring-varchar-without-length.aspx) –
@AaronBertrand我實際上有'varchar(30)',但是放棄它以使代碼更緊湊,因爲我認爲OP會更喜歡這個。但你是對的,最好是明確這些事情。無論如何,謝謝你的文章。 –
在這些字段中仍顯示爲0。我有源表中的高度和重量是在varchar()和目標表中的高度和重量是在數字()。我想將源數據插入到目標中。但這裏的問題是身高和體重字段在目的地不斷顯示爲零,只要它沒有價值。我只是想空白有 ID身高體重 B25 146 162 T41 135 G89 201 表B-目的地 ID身高體重 B25 146 162 T41 135 0 G89 0 201 – user3502587
我用正則表達式
{
cast(trim(
replace(to_char(value),'0','')) as int)
}
- 1. 用數組替換0的空格(Python)
- 2. Powershell用0空格替換2個空格跨目錄
- 3. 替換c中的\ 0空格
- 4. (VBA EXCEL)用四個空格替換0 0
- 5. KDB +:替換空整數,0
- 6. PHP - 用preg替換替換tabbed空格?
- 7. PIVOT列並用0替換空值
- 8. 使用0替換空單元 - SSAS
- 9. Symfony2 Ddeboer包:用0替換空白
- 10. 用空格替換標籤
- 11. 用%20替換空格
- 12. 用%20替換空格
- 13. 用perl替換長空格
- 14. 如何用空格替換「 - 」?
- 15. 在PHP替換用空格%
- 16. 用randam值替換空格
- 17. C++ - 用%20替換空格
- 18. 在Python 3中用0替換空單元格
- 19. 如何用空白單元格替換'0'值?
- 20. 如何在SQL Server中用0替換尾隨空格?
- 21. 替換爲空格
- 22. XML用空值替換空格
- 23. 用單個空格替換空白
- 24. Bash:Printf用換行符替換空格
- 25. 使用字符串替換空格後跟帶空格的文本替換
- 26. informix替換空值0選擇
- 27. 熊貓:寫入文件時將空單元格替換爲0
- 28. 替換「空格的字符
- 29. Python:將空格替換爲「 - 」
- 30. PHP:Encoded +被替換爲空格
不太清楚你問這裏。你可以發佈你試過的代碼嗎? – paqogomez
您可能想要使用「CAST()」或「CONVERT()」關鍵字。 –
我有字段,ids是varchar,但高度和重量是整數類型。現在,如果沒有值(使用case語句),我會得到0的身高和體重。但我想在這些領域空白 – user3502587