如果判斷這個nvarchar是否可以轉換成numberic啊(mssql) |
答題得分者是:pedro
|
hua2000
中階會員 ![]() ![]() ![]() 發表:102 回覆:200 積分:65 註冊:2006-11-04 發送簡訊給我 |
mssql database 有一列cc (nvarchar(15) , 我想通過一個mssql database 裡的function去返回一個值,如果cc列可以轉換成數值 numberic(15,3) 的話,那么就返回這個numberic(15,3),如果不能轉換的話(比如: 它裡面含有字母或別的不可被轉換的格式),就返回0.000,這個function如何寫啊?
多謝各位了 在線等待 |
pedro
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
|
hua2000
中階會員 ![]() ![]() ![]() 發表:102 回覆:200 積分:65 註冊:2006-11-04 發送簡訊給我 |
|
pedro
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
本來想說需一個迴圈逐字判斷
後來查看help,有個IsNumeric函式可直接使用,配合case及cast, 如此一個語法就解決 declare @table1 table(cc varchar(20)) insert @table1 select 'A@X#CC' insert @table1 select '2341' insert @table1 select '~124' SELECT Case when ISNUMERIC(cc)=1 then Cast(cc as decimal(10,4)) else 0 end DecVal FROM @table1 delete @table1 |
hua2000
中階會員 ![]() ![]() ![]() 發表:102 回覆:200 積分:65 註冊:2006-11-04 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |