Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách nối các chuỗi trong MySQL với CONCAT ()

MySQL có CONCAT() , cho phép bạn nối hai hoặc nhiều chuỗi. Hàm thực sự cho phép một hoặc nhiều đối số, nhưng công dụng chính của nó là để nối hai hoặc nhiều chuỗi.

Trong MySQL (và trong bất kỳ môi trường lập trình máy tính nào), nối chuỗi là thao tác nối các chuỗi ký tự từ đầu đến cuối.

Đây là một ví dụ:

SELECT CONCAT('Homer', ' ', 'Simpson') AS 'Full Name';

Kết quả:

+---------------+
| Full Name     |
+---------------+
| Homer Simpson |
+---------------+

Lưu ý rằng tôi thực sự đã nối 3 chuỗi ở đây. Tôi đã nối tên, họ với một khoảng trắng.

Nếu tôi không thêm không gian, nó sẽ trông như thế này:

SELECT CONCAT('Homer', 'Simpson') AS 'Full Name';

Kết quả:

+--------------+
| Full Name    |
+--------------+
| HomerSimpson |
+--------------+

Có thể có hoặc không phải là kết quả bạn đang tìm kiếm.

Vì vậy, nếu chúng ta áp dụng điều này cho cơ sở dữ liệu, thì truy vấn có thể trông giống như sau:

SELECT CONCAT(FirstName, ' ', LastName) AS 'Full Name'
FROM Individuals
WHERE IndividualId = '1';

Kết quả:

+---------------+
| Full Name     |
+---------------+
| Homer Simpson |
+---------------+

Nếu bạn đang nối nhiều hơn hai chuỗi và bạn cần một khoảng trắng (hoặc dấu phân tách khác), hãy xem xét sử dụng CONCAT_WS() hàm số. Điều này cho phép bạn chỉ định một dấu phân tách sẽ được sử dụng giữa mỗi chuỗi. Bạn chỉ cần chỉ định dấu phân tách một lần và nó được sử dụng trên mọi chuỗi được nối, do đó giúp bạn không phải nhập lại dấu phân tách giữa mỗi chuỗi.

Đối số NULL

CONCAT() hàm trả về NULL nếu bất kỳ đối số nào là NULL .

Ví dụ:

SELECT CONCAT('Homer', NULL, 'Simpson') AS 'Full Name';

Kết quả:

+-----------+
| Full Name |
+-----------+
| NULL      |
+-----------+

Chuỗi nhị phân so với chuỗi không nhị phân

Tài liệu MySQL cho biết:

Nếu tất cả các đối số là chuỗi không nhị phân, kết quả là một chuỗi không nhị phân. Nếu các đối số bao gồm bất kỳ chuỗi nhị phân nào, kết quả là một chuỗi nhị phân. Đối số số được chuyển đổi thành dạng chuỗi không nhị phân tương đương của nó.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2017 @ Somenines:Kỷ niệm những câu chuyện của khách hàng của chúng tôi

  2. LOAD DATA LOCAL INFILE đưa ra lỗi Lệnh đã sử dụng không được phép với phiên bản MySQL này

  3. MySQLSyntaxErrorException gần? khi cố gắng thực thi PreparedStatement

  4. Hiểu về BẢNG TRUNCATE của MySQL bằng các ví dụ thực tế

  5. cập nhật các cột có số thứ tự mysql