NEWS

[DATABASE] Hướng dẫn sử dụng STRING_AGG và CONCAT_WS trong sqlserver 2017

[DATABASE] Hướng dẫn sử dụng STRING_AGG và CONCAT_WS trong sqlserver 2017
Đăng bởi: Thảo Meo - Lượt xem: 7968 08:13:22, 15/05/2022DATABASE   In bài viết

Xin chào các bạn, bài viết hôm nay mình sẻ tiếp tục các bạn sử dụng hai hàm STRING_AGG và CONCAT_WS trong sqlserver từ phiên bản 2017 trở lên.

[DATABASE] Function STRING_AGG and CONCAT_WS in SQLSERVER

1.Function STRING_AGG

Hàm này nối các giá trị của chuỗi với sự trợ giúp của các dấu phân tách trong khi không thêm dấu phân tách ở cuối chuỗi.

Dữ liệu đầu vào có thể là VARCHAR, NVARCHAR, bạn có thể tùy ý chỉ định thứ tự hiển thị của kết quả bằng việc sử dụng mệnh đề WITHIN GROUP.

Cú pháp:

STRING_AGG ( expression, separator ) [ <order_clause> ]

<order_clause> ::= 
 WITHIN GROUP ( ORDER BY <order_by_expression_list> [ ASC | DESC ] ) 

Ví dụ: Mình có bảng table tbl_employee như bên dưới

string_agg_sql_demo

Và bây giờ mình sẻ dùng hàm STRING_AGG để gom nhóm các cột Name theo City như kết quả bên dưới đây.

SELECT [City], STRING_AGG([Name], ', ')  WITHIN GROUP (ORDER BY name ASC) AS names FROM [dbo].[tbl_employee] WHERE [City] IS NOT NULL	 GROUP BY [City]

Kết quả khi chúng ta thực hiện câu lệnh trên:

string_agg_mssql

Các bạn sắp xếp các name nối với nhau qua từ qua WITHIN GROUP

2. Function CONCAT_WS

Hàm này cho phép chúng ta nếu chuỗi lại với nhau và được ngăn cách bởi ký tự do chúng ta quy định

SELECT CONCAT_WS(';','SQL', 'C#', 'VB.NET', 'FLUTTER', 'ASP.NET' ) AS counter;

Kết quả:

concat_ws_sqlserver

Thanks for watching!

THÔNG TIN TÁC GIẢ

[DATABASE] Hướng dẫn sử dụng STRING_AGG và CONCAT_WS trong sqlserver 2017
Đăng bởi: Thảo Meo - Lượt xem: 7968 08:13:22, 15/05/2022DATABASE   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp