MySQL的CAST AS INT是一個非常有用的類型轉換函數,可以將不同數據類型的值轉換為整數。在MySQL中,整數通常使用INT、BIGINT、SMALLINT、TINYINT等類型來表示。
用法:
CAST(expression AS INT)
其中expression為要轉換為整數的值。如果expression本身就是整數類型,則返回其本身的值;否則將其轉換為整數類型。如果無法轉換,則返回NULL。
示例:
SELECT CAST('123' AS INT); -- 返回整數123
SELECT CAST(123.456 AS INT); -- 返回整數123
SELECT CAST('abc' AS INT); -- 返回NULL
高級用法:
CAST AS INT還可以與其他函數和條件表達式聯合使用,來實現復雜的類型轉換操作。例如,可以使用IF函數來判斷轉換后是否大于某個值:
SELECT IF(CAST('123' AS INT) > 100, 'yes', 'no'); -- 返回'yes'
另外,CAST AS INT還可以用于數值計算。例如,將VARCHAR型的價格轉換為整數,然后進行累加求和:
SELECT SUM(CAST(price AS INT)) FROM products;
CAST AS INT還可以將不同字符集的字符串轉換為整數。例如,可以將GBK字符集的字符串轉換為整數:
SELECT CAST(CONVERT('中文字符串' USING GBK) AS INT);
總之,CAST AS INT是MySQL中非常實用的類型轉換函數,可以幫助開發者處理各種數據類型之間的轉換。