02/10/2018, 00:23
[SQLSERVER] Tách viết tắt tên FirstName và LastName
Bài viết hôm nay, mình sẽ hướng dẫn các bạn các sử dụng T-Sql để lấy tên viết tắt trong họ tên của danh sách nhân viên. Mình ví dụ: Các bạn có nhu cầu lấy chữ viết tắt ra để viết cho ứng dụng như hình bên dưới: VD: Tách tên viết tắt ...
Bài viết hôm nay, mình sẽ hướng dẫn các bạn các sử dụng T-Sql để lấy tên viết tắt trong họ tên của danh sách nhân viên.
Mình ví dụ: Các bạn có nhu cầu lấy chữ viết tắt ra để viết cho ứng dụng như hình bên dưới:

VD: Tách tên viết tắt của danh sách bên dưới

Bây giờ chúng ta sẽ tạo một function fn_GetFirstAndLastLetterFromName() để lấy chữ viết tắt.
SET QUOTED_IDENTIFIER ON
SET ANSI_NULLS ON
GO
ALTER FUNCTION [dbo].[fn_GetFirstAndLastLetterFromName](@input_name NVARCHAR(100))
-- Created by Nguyễn Thảo 25/07/2018
RETURNS VARCHAR(2)
AS
BEGIN
DECLARE @result NVARCHAR(2);
DECLARE @temp NVARCHAR(100);
SET @result=SUBSTRING(@input_name, 1, 1);
IF CHARINDEX(, @input_name)>0
BEGIN
SET @temp=REVERSE(@input_name);
SET @result = UPPER(dbo.ufn_removeMark(CONCAT(@result, SUBSTRING(@temp, CHARINDEX(, @temp)-1, 1))));
END;
ELSE
BEGIN
SET @result = UPPER(dbo.ufn_removeMark(@result));
END;
RETURN @result;
END;
GO
Bây giờ, thực hiện lại câu truy vấn để xem kết quả.

HAPPY CODING ![]()