Nối chuỗi trong MySQL sử dụng CONCAT() và CONCAT_WS()Trong một số tình huống khi làm việc với kiểu dữ liệu chuỗi (hay string) trong cơ sở dữ liệu MySQL chúng ta cần nối các chuỗi với nhau trước khi trả về kết quả. Ví dụ trong bảng Show Trong MySQL chúng ta có thể sử dụng hàm MySQL CONCAT()Hàm Một ví dụ đơn giản sau:
Lưu ý rằng ở câu SQL query trên ở cuối mỗi chuỗi chúng ta cần thêm khoảng trắng (từ chuỗi cuối cùng Kết quả hiển thị:
Nếu bạn muốn đánh tên cho cột dữ liệu trả về từ hàm
Kết quả hiển thị:
Áp dụng đối với trường hợp nối chuỗi từ các cột trên bảng
Hàm MySQL CONCAT_WS()Hàm CONCAT() trong MySQL được dùng để nối hai hoặc nhiều chuỗi với nhau và thêm ký tự phân biệt (separator) giữa mỗi chuối được nối. Một ví dụ đơn giản sau:
Với câu query trên chúng ta sử dụng hàm Kết quả hiển thị:
Áp dụng đối với trường hợp nối chuỗi từ các cột trên bảng
Hàm Thông thường để nối chuỗi trong PHP thì chúng ta dùng dấu chấm (.), để nối chuỗi trong Javascript thì chúng ta dùng dấu cộng (+). Vậy để nối chuỗi trong MYSQL thì ta phải làm thế nào? Đơn giản là ta sẽ dùng hàm Concat trong MYSQL nhé các bạn. Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức. 1. Hàm nối chuỗi Concat trong MYSQLHàm concat có tác dụng là nối các chuỗi lại với nhau với cú pháp như sau: concat(str1, str2, str2, ... , strn) Như vậy tham số truyền vào là không giới hạn, nghĩa là nếu bạn nối bao nhiêu thì sẽ truyền vào bấy nhiêu. Bài viết này được đăng tại [free tuts .net] Ví dụ: Nối hai chuỗi select concat('freetuts','.net') as domain Chạy lên kết quả sẽ là (domain => 2. Một số ví dụ hàm nối chuỗi concat trong MYSQLSử dụng Concat trong thao tác SELECT: Thực hiện lấy tên các tour du lịch và nối thêm một dòng chữ "Địa điểm du lịch". SELECT CONCAT('Ðịa điểm du lịch ', title) AS title FROM tour Sử dụng Concat trong thao tác INSERT: Trong thao tác thêm tour du lịch hãy nối thêm một dòng chữ "Chào mừng" vào tiêu đề. INSERT INTO tour(title) VALUES(CONCAT('Chào mừng', 'Tiêu đề tour')) Sử dụng Concat trong thao tác UPDATE: Mỗi khi update hãy tự động nối chuỗi "Địa điểm du lịch" vào tiêu đề của tour. UPDATE tour SET title = CONCAT('Địa điểm du lịch', 'Tieu de tour') WHERE id = 12 Sử dụng Concat trong thao tác DELETE: Khi xóa bài viết theo tiêu đề hãy nối thêm dòng chữ "Địa điểm du lịch" ở trong điều kiện xóa. DELETE FROM tour WHERE title = CONCAT('Địa điểm du lịch', 'tiêu đề tour') Lời kết:Đối với hàm nối chuỗi thì chúng ta thực hiện đa số ở các thao tác trên, nhưng ngoài ra nó còn thực hiện ở Stored Procedure trong MYSQL nữa, nhưng vì bài này chỉ mang tính chất giới thiệu nên mình dừng ở đây. Chúc các bạn học tốt |