[SQLSERVER] Hướng Dẫn Tạo Function Bỏ Dấu Tiếng Việt ... - Code 24h
Có thể bạn quan tâm
Xin chào các bạn, bài viết hôm nay mình sẽ tiếp tục hướng dẫn các bạn cách bỏ dấu tiếng việt trong cơ sở dữ liệu Microsoft Sqlserver.
Trong lập trình ứng dụng hay website, nhiều lúc các bạn sẽ làm việc với các hàm tìm kiếm.
Ví dụ: Khi các bạn muốn tìm kiếm mà người dùng nhập vào không dấu thì sqlserver tự động tìm kiếm theo không dấu.
Source code Function Non_Unicode_Convert:
CREATE FUNCTION [dbo].[non_unicode_convert](@inputVar NVARCHAR(MAX) ) RETURNS NVARCHAR(MAX) AS BEGIN IF (@inputVar IS NULL OR @inputVar = ') RETURN ' DECLARE @RT NVARCHAR(MAX) DECLARE @SIGN_CHARS NCHAR(256) DECLARE @UNSIGN_CHARS NCHAR (256) SET @SIGN_CHARS = N'ăâđêôơưàảãạáằẳẵặắầẩẫậấèẻẽẹéềểễệếìỉĩịíòỏõọóồổỗộốờởỡợớùủũụúừửữựứỳỷỹỵýĂÂĐÊÔƠƯÀẢÃẠÁẰẲẴẶẮẦẨẪẬẤÈẺẼẸÉỀỂỄỆẾÌỈĨỊÍÒỎÕỌÓỒỔỖỘỐỜỞỠỢỚÙỦŨỤÚỪỬỮỰỨỲỶỸỴÝ' + NCHAR(272) + NCHAR(208) SET @UNSIGN_CHARS = N'aadeoouaaaaaaaaaaaaaaaeeeeeeeeeeiiiiiooooooooooooooouuuuuuuuuuyyyyyAADEOOUAAAAAAAAAAAAAAAEEEEEEEEEEIIIIIOOOOOOOOOOOOOOOUUUUUUUUUUYYYYYDD' DECLARE @COUNTER int DECLARE @COUNTER1 int SET @COUNTER = 1 WHILE (@COUNTER <= LEN(@inputVar)) BEGIN SET @COUNTER1 = 1 WHILE (@COUNTER1 <= LEN(@SIGN_CHARS) + 1) BEGIN IF UNICODE(SUBSTRING(@SIGN_CHARS, @COUNTER1,1)) = UNICODE(SUBSTRING(@inputVar,@COUNTER ,1)) BEGIN IF @COUNTER = 1 SET @inputVar = SUBSTRING(@UNSIGN_CHARS, @COUNTER1,1) + SUBSTRING(@inputVar, @COUNTER+1,LEN(@inputVar)-1) ELSE SET @inputVar = SUBSTRING(@inputVar, 1, @COUNTER-1) +SUBSTRING(@UNSIGN_CHARS, @COUNTER1,1) + SUBSTRING(@inputVar, @COUNTER+1,LEN(@inputVar)- @COUNTER) BREAK END SET @COUNTER1 = @COUNTER1 +1 END SET @COUNTER = @COUNTER +1 END -- SET @inputVar = replace(@inputVar,' ','-') RETURN @inputVar ENDVí dụ: bây giờ mình sẽ nhập vào từ khóa không dấu là "Nhat ban" thì kết quả trả về của chúng ta mong muốn là có từ Nhật Bản.
Code tìm kiếm sqlserver:
DECLARE @query NVARCHAR(max) SELECT @query = dbo.non_unicode_convert(N'nhat ban') SELECT * FROM dbo.tbl_baiviet WHERE dbo.non_unicode_convert(title) LIKE '%' + @query+ '%'Kết quả thực hiện truy vấn trên
Xóa bỏ unicode trong sqlserver HAVE FUN :)
Tags: bỏ dấu unicodebỏ dấu tiếng việt sqlserverremove unicodeTừ khóa » Bỏ Dấu Sql
-
[SQLSERVER] Hướng Dẫn Tạo Function Bỏ Dấu Tiếng Việt Unicode
-
Chuyển Tiếng Việt Có Dấu Sang Không Dấu Trong Microsoft SQL Server
-
Loại Bỏ Dấu Tiếng Việt Trong T-SQL | Quyetdo289's Blog
-
Top 15 Hàm Loại Bỏ Dấu Tiếng Việt Trong Sql
-
Hàm Chuyển Chuỗi Có Dấu (Unicode) Thành Không Dấu Trong Sql
-
Chuyển Tiếng Việt Có Dấu Sang Không Dấu Trong Microsoft SQL Server
-
Chuyển Tiếng Việt Có Dấu Thành Không Dấu - @manhng
-
Loại Bỏ Các Dấu Cách Theo Dõi Và Cập Nhật Trong Các Cột Trong SQL ...
-
Function Convert Tiếng Việt Có Dấu -> Không Dấu - Diễn Đàn Tin Học
-
SQL String Functions (Phần 1) - Viblo
-
Hàm RTRIM Trong SQL Server
-
Làm Cách Nào để Xóa Dấu Ngoặc Kép đầu Và Cuối Trong SQL Server?
-
Sửa Các Câu Lệnh SQL để Tinh Chỉnh Kết Quả Truy Vấn
-
Cách Viết điều Kiện Với Giá Trị Có Dấu Tiếng Việt Trong SQL Server ...
-
2 Cách để Loại Bỏ Dấu Cách, Khoảng Trắng Giữa Các Từ, Các Số Trong ô ...
-
Xóa Các Số 0 ở Cuối Thập Phân Trong SQL Server - Wake-up