SQL Server CONCAT_WS

SQL Server CONCAT_WS: Giới thiệu và Cú pháp

CONCAT_WS là một hàm trong SQL Server giúp nối các chuỗi lại với nhau bằng một ký tự phân cách (separator) được chỉ định. Tên gọi CONCAT_WS mang ý nghĩa của việc "nối" (concatenate) các chuỗi với "phân cách" (separator). Hàm này rất hữu ích khi bạn cần tạo ra một chuỗi tổng hợp từ nhiều chuỗi khác nhau và muốn có một ký tự phân cách giữa chúng.

Định nghĩa

Hàm CONCAT_WS cho phép bạn nối không giới hạn số lượng các tham số chuỗi với nhau và sử dụng một tham số để định nghĩa ký tự phân cách giữa các chuỗi đó. Nếu một trong các tham số chuỗi là NULL, nó sẽ bị bỏ qua trong quá trình nối.

Cú pháp

CONCAT_WS(separator, string1, string2, ..., stringN)

Trong đó:

  • separator: Ký tự hoặc chuỗi được sử dụng làm phân cách giữa các chuỗi.
  • string1, string2, ..., stringN: Các chuỗi cần nối. Có thể là nhiều chuỗi.

Ví dụ sử dụng CONCAT_WS

Ví dụ 1: Nối các chuỗi đơn giản

SELECT CONCAT_WS('-', '2023', '10', '05') AS Result;

Kết quả sẽ là: 2023-10-05

Ví dụ 2: Nối tên họ

SELECT CONCAT_WS(' ', FirstName, LastName) AS FullName
FROM Employees;

Kết quả sẽ là danh sách tên đầy đủ của nhân viên, với khoảng trắng là ký tự phân cách.

Ví dụ 3: Bỏ qua giá trị NULL

SELECT CONCAT_WS(', ', 'Apple', NULL, 'Banana', 'Cherry') AS Fruits;

Kết quả sẽ là: Apple, Banana, Cherry - giá trị NULL sẽ bị bỏ qua.

Ví dụ 4: Sử dụng trong câu lệnh UPDATE

UPDATE Employees
SET FullName = CONCAT_WS(' ', FirstName, LastName);

Ví dụ này sẽ cập nhật cột FullName trong bảng nhân viên bằng cách nối FirstNameLastName.

Kết luận

Hàm CONCAT_WS trong SQL Server là một công cụ mạnh mẽ và linh hoạt giúp bạn kết hợp các chuỗi một cách dễ dàng. Nó vừa giúp giảm thiểu số lượng mã cần thiết để thực hiện việc nối chuỗi, vừa giúp bạn dễ dàng kiểm soát ký tự phân cách giữa các chuỗi. Hy vọng bài viết này đã giúp bạn hiểu rõ hơn về cách sử dụng CONCAT_WS trong SQL Server.