- [C#] Di chuyển và thay đổi kích thước Control Winform khi ứng dụng đang chạy
- [VB.NET] Chia sẻ source tạo sắp xếp đội hình bóng đá Line-ups đội bóng
- [C#] Hướng dẫn chỉnh sửa Text của label trực tiếp trên winform
- [C#] Hướng dẫn custom TextBox giống Ultraviewer trên Winform
- [C#] Show Modal Winform like Bootstrap
- [DATABASE] Thứ tự thực hiện mệnh đề truy vấn SELECT trong Sqlserver
- [C#] Hướng dẫn viết addin Excel Lấy hình ảnh từ URL internet vào Excel
- [DATABASE] TSQL view max length all column data trên table Sqlserver
- [DEVEXPRESS] Hướng dẫn sử dụng MailMerge kèm Hình ảnh trên Winform
- [DATABASE] Hướng dẫn truy vấn xem kích thước lưu trữ của từng bảng ghi Table trên sqlserver
- [C#] Hướng dẫn Fake Date Time sử dụng thư viện Harmony
- [DATABASE] Phân biệt câu lệnh DDL và DML trong sqlserver
- [C#] Hướng dẫn convert file mã HTML sang file Pdf trên winform
- [DEVEXPRESS] Tạo các loại mã vạch Barcode trực tiếp trên Devexpress Barcode API
- [DEVEXPRESS] Hướng dẫn custom Simple button thành Progressbar
- [DATABASE] Tách số và chữ từ chuỗi - hàm tối ưu hóa tách số và chữ trong Sqlserver
- [C#] Tìm kiếm gần đúng Full Text Search sử dụng thư viện Lucene.NET
- [C#] Chia sẻ tài liệu, sdk và source code máy chấm công dòng máy ZKTeco
- [C#] Memory Cache là gì, và sử dụng trong ứng dụng Winform
- [DATABASE] Khóa chính Primary Key trong Sqlserver
[DATABASE] Hướng dẫn tạo Procedure String Split in Mysql
Xin chào các bạn, bài viết hôm nay mình hướng dẫn các bạn viết Store Procedure Hàm String_Split trong Mysql server.
[DATABASE] STRING_SPLIT IN MYSQL SERVER
Trên SQL server, có cung cấp cho chúng ta hàm STRING_SPLIT dùng để tách một chuỗi thành từng dòng trên database.
- Trong Mysql, khi các bạn tạo hàm Function thì nó chỉ hỗ trợ các bạn trả về dữ liệu là một chuỗi, không hỗ trợ trả về 1 Table như trong Sqlserver.
Trên Mysql, các bạn tạo cho mình một procedure splitString với nội dung bên dưới:
DELIMITER //
CREATE PROCEDURE splitString(
IN inputString text,
IN delimiterChar CHAR(1)
)
BEGIN
DROP TEMPORARY TABLE IF EXISTS temp_string;
CREATE TEMPORARY TABLE temp_string(vals text);
WHILE LOCATE(delimiterChar,inputString) > 1 DO
INSERT INTO temp_string SELECT SUBSTRING_INDEX(inputString,delimiterChar,1);
SET inputString = REPLACE(inputString, (SELECT LEFT(inputString, LOCATE(delimiterChar, inputString))),'');
END WHILE;
INSERT INTO temp_string(vals) VALUES(inputString);
SELECT TRIM(vals) FROM temp_string;
END; //
DELIMITER ;
Kết quả khi tách sẽ đưa dữ liệu vào một table Temp.
Thực hiện chạy Procedure trên:
CALL splitString('1,2,3', ',');
-- Output:
+------------+
| TRIM(vals) |
+------------+
| 1 |
| 2 |
| 3 |
+------------+
CALL splitString('hello ; laptrinhvb.net ; thaomeo', ';');
-- Output:
+------------------+
| TRIM(vals) |
+------------------+
| hello |
| laptrinhvb.net |
| thaomeo |
+------------------+
Thanks for watching!