Transact-SQL Reference

UNICODE

Returns the integer value, as defined by the Unicode standard, for the first character of the input expression.

Syntax

UNICODE ( 'ncharacter_expression' )

Arguments

'ncharacter_expression'

Is an nchar or nvarchar expression.

Return Types

int

Examples
A. Use UNICODE and NCHAR

This example uses the UNICODE and NCHAR functions to print the UNICODE value of the first character of the ?kergatan 24-character string, and to print the actual first character, ?.

DECLARE @nstring nchar(12)
SET @nstring = N'?kergatan 24'
SELECT UNICODE(@nstring), NCHAR(UNICODE(@nstring))

Here is the result set:

----------- - 
197         ?
B. Use SUBSTRING, UNICODE, and CONVERT

This example uses the SUBSTRING, UNICODE, and CONVERT functions to print the character number, the Unicode character, and the UNICODE value of each of the characters in the string ?kergatan 24.

-- The @position variable holds the position of the character currently
-- being processed. The @nstring variable is the Unicode character 
-- string to process.
DECLARE @position int, @nstring nchar(12)
-- Initialize the current position variable to the first character in 
-- the string.
SET @position = 1
-- Initialize the character string variable to the string to process. 
-- Notice that there is an N before the start of the string, which 
-- indicates that the data following the N is Unicode data.
SET @nstring = N'?kergatan 24'
-- Print the character number of the position of the string you are at, 
-- the actual Unicode character you are processing, and the UNICODE 
-- value for this particular character.
PRINT 'Character #' + ' ' + 'Unicode Character' + ' ' + 'UNICODE Value'
WHILE @position <= DATALENGTH(@nstring)
-- While these are still characters in the character string,
   BEGIN
   SELECT @position, 
      CONVERT(char(17), SUBSTRING(@nstring, @position, 1)),
      UNICODE(SUBSTRING(@nstring, @position, 1))
   SELECT @position = @position + 1
   END

Here is the result set:

Character # Unicode Character UNICODE Value
                                          
----------- ----------------- ----------- 
1           ?                 197         
                                          
----------- ----------------- ----------- 
2           k                 107         
                                          
----------- ----------------- ----------- 
3           e                 101         
                                          
----------- ----------------- ----------- 
4           r                 114         
                                          
----------- ----------------- ----------- 
5           g                 103         
                                          
----------- ----------------- ----------- 
6           a                 97          
                                          
----------- ----------------- ----------- 
7           t                 116         
                                          
----------- ----------------- ----------- 
8           a                 97          
                                          
----------- ----------------- ----------- 
9           n                 110         
                                          
----------- ----------------- ----------- 
10                            32          
                                          
----------- ----------------- ----------- 
11          2                 50          
                                          
----------- ----------------- ----------- 
12          4                 52

See Also

Data Types

NCHAR

String Functions

Using Unicode Data