CAST()
似乎只適用於BINARY,CHAR,DATE; DATETIME,DECIMAL,TIME,SIGNED,UNSIGNED。如何在MySQL中將類型轉換爲bigint?
我需要一個十六進制字符串轉換爲BIGINT,那就是,我會想:
SELECT CAST(CONV("55244A5562C5566354',16,10) AS BIGINT)
CONV()返回一個字符串,所以這就是爲什麼我想要的轉換。我有2用於此
插入數據,例如,
INSERT INTO a(foo) SELECT CONV(bar,16,10) FROM ...
這裏foo是一個bigint列,bar是一個varchar。也許我可以擺脫select語句是一個字符串,讓MySQL照顧它(?)返回數據,其中客戶端將動態學習列的數據類型,
SELECT CONV(bar,16,10)
是不好的,因爲客戶端將把它作爲一個字符串處理。
因此,它將它轉換爲bigint /什麼?我不必擔心溢出一個「正常」整數? – Anonym
@匿名:在'5.1'中,'CAST ... AS UNSIGNED'總是產生一個'BIGINT'。 – Quassnoi
這是否記錄在任何地方? – will