SQL中 cast as int的語法...溢位

edited 十月 2013 in 資料庫
我在一個資料表裡有兩個欄位 型態都是Varchar 但是裡面存的都是數字


我想要把這兩欄中 數字最大的那一個select出來

於是我用


select max(cast (欄位一 as int)) from table

select max(cast (欄位二 as int)) from table


問題在於第一欄成功 第二欄失敗

錯誤訊息是Arithmetic overflow or division by zero has occured

我猜是第二欄存的數字太大導致溢位

第一欄的數字是10位數 第二欄是13位數

int換成long阿 double什麼的都沒用 而且都是整數換成double會選到不正確的數字


有人能幫忙解決嗎??

原始討論: http://twpug.net/x/modules/newbb/viewtopic.php?topic_id=6681

評論

Sign In or Register to comment.