本文介紹了將 varchar 轉換為 float IF ISNUMERIC的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我有一列包含字符和數字
I have a column that contains characters and numbers
12
13
14
19K/YR
22
所以列類型是varchar.但后來我也在用這個列做一些計算,所以我試圖將數據轉換為浮點數,如果它是數字.
So the column type is varchar. But then I'm also doing some computations with this column, so I'm trying to convert the data to float if it is numeric.
雖然這給了我一個錯誤:
This gives me an error though:
SELECT CASE ISNUMERIC(QTY)
WHEN 1 THEN CAST(QTY AS float)
ELSE QTY
END AS test
推薦答案
您不能強制轉換為浮動并將字符串保留在同一列中.當 isnumeric 返回 0 時,您可以這樣做以獲取 null.
You can't cast to float and keep the string in the same column. You can do like this to get null when isnumeric returns 0.
SELECT CASE ISNUMERIC(QTY) WHEN 1 THEN CAST(QTY AS float) ELSE null END
這篇關于將 varchar 轉換為 float IF ISNUMERIC的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!
【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!