SQL UNICODE 函数

SQL Server 的 UNICODE 函数是字符串函数之一,它返回 Unicode 标准中定义的整数值。如果我们指定字符字符串(多于一个字符),该函数将返回字符表达式最左边字符的整数值。UNICODE 函数的语法如下所示。

SELECT UNICODE (NCharacter_Expression)
FROM [Source]

Character_Expression:请指定您要查找 UNICODE 值的有效表达式。此函数将返回此表达式最左边字符的 Unicode 标准中定义的整数值。此 Character_Expression 的类型为 NChar 或 NVarchar。

SQL UNICODE 函数示例

此函数返回给定表达式最左边字符的 Unicode 值。以下查询可能向您展示使用此函数的多种方法。

DECLARE @x NCHAR(25)
DECLARE @y INT

-- Initialize the variables.  
SET @x = 'è'
SET @y = 5

SELECT UNICODE(@x) AS Result1,
       UNICODE(@y) AS Result2 ;

SELECT UNICODE('âëxyz') AS Result3;  

SELECT UNICODE('Å238') AS Result4;
UNICODE Function 1

在此示例中,下面代码的前四行用于声明两个 NCHAR 和 Integer 类型的变量。接下来,我们分别为变量赋了字符串数据 ‘è’ 和整数 5。

DECLARE @x NCHAR(25)
DECLARE @y INT

-- Initialize the variables.  
SET @x = 'è'
SET @y = 5

从下面的语句中,您可以看到我们正在查找 ‘è’ 和整数 5 的 UNICODE 值。

SELECT UNICODE(@x) AS Result1,
       UNICODE(@y) AS Result2 ;

在下面一行中,我们将 SQL Server UNICODE 函数直接应用于一组 N 字符(单词)。这里,它将返回最左边字符(即 ‘â’)的值,该值应为 226。

SELECT UNICODE('âëxyz') AS Result3;

从下面的语句中可以看到,我们将其直接应用于 NChars 和整数的组合。在这里,这个字符串函数将返回最左边字符(即 ‘Å’)的值,该值应为 197。

SELECT UNICODE('Å238') AS Result4;

UNICODE 示例 2

在此示例中,我们将在 WHILE LOOP 中使用 UNICODE 函数。我建议您参考SUBSTRINGWHILE LOOPSQL Server中的文章,以理解查询执行。

DECLARE @i INT, 
        @str NCHAR(16);  

-- Initialize the variables.  
SET @i = 1;  
SET @str = 'TùtÓrïål GãtÊwáy';
 
WHILE @i <= LEN(@str)
	BEGIN
		SELECT SUBSTRING(@str, @i, 1) AS [NChar_Value],
			   UNICODE(SUBSTRING(@str, @i, 1)) AS [UNICODE_Result]
		SET @i = @i + 1
	END;
UNICODE Function 2