CONCAT() 是 MySQL 中最基礎也最常用的字串連接函數,用於將一個或多個字串合併為單一字串。語法為 CONCAT(str1, str2, ...),參數不限個數。
mysql> SELECT CONCAT('10');
+--------------+
| CONCAT('10') |
+--------------+
| 10 |
+--------------+
mysql> SELECT CONCAT('11', '22', '33');
+------------------------+
| CONCAT('11','22','33') |
+------------------------+
| 112233 |
+------------------------+
只要參數中包含任一 NULL,結果即為 NULL。 這點在處理可能缺失的欄位時需特別注意。
mysql> SELECT CONCAT('11', '22', NULL);
+------------------------+
| CONCAT('11','22',NULL) |
+------------------------+
| NULL |
+------------------------+
CAST(int_col AS CHAR) 明確轉型。在連接可能為 NULL 的欄位時,建議搭配 IFNULL() 或 COALESCE() 預先處理,避免整串結果變成 NULL。例如:CONCAT(IFNULL(col1, ''), IFNULL(col2, ''))。