Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Khác biệt giữa CONCAT() và CONCAT_WS()?

Cả CONCAT() và CONCAT_WS() đều dùng để nối hai hoặc nhiều chuỗi nhưng khác biệt cơ bản là CONCAT_WS() có thể nối kèm phân tách (separator) giữa các chuỗi, trong khi CONCAT() không khái niệm phân tách. Khác biệt quan trọng khác: CONCAT() trả về NULL nếu bất kỳ đối số nào là NULL, trong khi CONCAT_WS() trả về NULL chỉ khi separator là NULL.

Ví dụ

Ví dụ dưới minh họa khác biệt giữa CONCAT() và CONCAT_WS():

mysql> SELECT CONCAT('Ram','is','a','good','student') AS 'Ví dụ CONCAT()';
+---------------------+
| Ví dụ CONCAT()      |
+---------------------+
| Ramisagoodstudent   |
+---------------------+
1 row in set (0.00 sec)
mysql> SELECT CONCAT_WS(' ', 'Ram','is','a','good','student') AS 'Ví dụ CONCAT_WS()';
+------------------------+
| Ví dụ CONCAT_WS()      |
+------------------------+
| Ram is a good student  |
+------------------------+
1 row in set (0.00 sec)