- [DATABASE] Hướng dẫn tạo Procedure String Split in Mysql
- [C#] Thiết lập dấu (,) hay dấu (.) ở định dạng số đúng với định dạng số Việt Nam
- [C#] Chia sẻ source code Game Spin Lucky Wheel
- [C#] Hướng dẫn Encode and Decode HTML
- Hướng dẫn tạo tài khoản Chat Open AI GPT tại Việt Nam
- [C#] Hướng dẫn thay đổi giao diện ứng dụng Winform theo giao diện của Windows
- [VB.NET] Hiệu ứng Acrylic, Mica, Tabbed Blur Effect trên Winform
- [DEVEXPRESS] Hướng dẫn sử dụng HTML Template trên Combobox Edit
- [C#] Chia sẻ source code Orange Rain in Winform
- [DEVEXPRESS] Hướng dẫn sử dụng HTML Template trên XtraMessageBox Winform Devexpress 22.2.3
- [DEVEXPRESS] Hướng dẫn sử dụng HTML and CSS Code Viewer trên Winform
- [C#] Number Effect Counter up and down in winform
- [C#] Hướng dẫn Supend and Resume Process ID in Winform
- [C#] Hiển thị line number trên Richtextbox Winform
- [C#] Fake Blue Screen BSOD in winform
- [C#] Chia sẽ code demo sử dụng Async Parallel Foreach and For in Winform
- [C#] Sử dụng ActionBlock run X task at time winform
- [C#] Hướng dẫn sử dụng Property Grid để lưu và tải lại thông tin cấu hình user trên winform
- [C#] Hướng dẫn bắt sự kiện khi đối tượng di chuyển chạm vào object trên winform HitTest Object
- [SQLSERVER] Sử dụng GROUP BY và ROLLUP, CUBE để thống kê dữ liệu
[DATABASE] Hướng dẫn sử dụng STRING_AGG và CONCAT_WS trong sqlserver 2017
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
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:
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ả:
Thanks for watching!