UNICODE (Transact-SQL)UNICODE (Transact-SQL)

適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse

Unicode 標準に定義された、入力式の先頭文字の整数値を返します。Returns the integer value, as defined by the Unicode standard, for the first character of the input expression.

トピック リンク アイコン Transact-SQL 構文表記規則Topic link icon Transact-SQL Syntax Conventions

構文Syntax

UNICODE ( 'ncharacter_expression' )  

注意

SQL Server 2014 以前の Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。To view Transact-SQL syntax for SQL Server 2014 and earlier, see Previous versions documentation.

引数Arguments

' ncharacter_expression '' ncharacter_expression '
nchar または nvarchar 式です。Is an nchar or nvarchar expression.

戻り値の型Return Types

intint

解説Remarks

SQL Server 2012 (11.x)SQL Server 2012 (11.x) より前のバージョンの SQL ServerSQL Server、および Azure SQL データベースAzure SQL Database では、UNICODE 関数で 000000 ~ 00FFFF の範囲の UCS-2 コードポイントが返されます。これにより、Unicode Basic Multilingual Plane (BMP) で 65,535 文字を表現できます。In versions of SQL ServerSQL Server earlier than SQL Server 2012 (11.x)SQL Server 2012 (11.x) and in Azure SQL データベースAzure SQL Database, the UNICODE function returns a UCS-2 codepoint in the range 000000 through 00FFFF which is capable of representing the 65,535 characters in the Unicode Basic Multilingual Plane (BMP). SQL Server 2012 (11.x)SQL Server 2012 (11.x) 以降、補助文字 (SC) が有効になっている照合順序を使用すると、UNICODE では 000000 から 10FFFF の範囲の UTF-16 コードポイントが返されます。Starting with SQL Server 2012 (11.x)SQL Server 2012 (11.x), when using Supplementary Character (SC) enabled collations, UNICODE returns a UTF-16 codepoint in the range 000000 through 10FFFF. データベース エンジンDatabase Engineの Unicode サポートの詳細については、照合順序および Unicode サポートに関するページを参照してください。For more information on Unicode support in the データベース エンジンDatabase Engine, see Collation and Unicode Support.

Examples

A.A. UNICODE 関数と NCHAR 関数を使用するUsing UNICODE and the NCHAR function

次の例では、UNICODENCHAR の各関数を使用して、文字列 Åkergatan 24 の先頭文字を表す UNICODE 値と実際の先頭文字 Å を出力します。The following 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.B. SUBSTRING、UNICODE、CONVERT を使用するUsing SUBSTRING, UNICODE, and CONVERT

次の例では、SUBSTRINGUNICODE、および CONVERT の各関数を使用して、文字列 Åkergatan 24 の各文字の文字番号、Unicode 文字、および UNICODE 値を出力します。The following 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 <= LEN(@nstring)  
-- While these are still characters in the character string,  

BEGIN;  
   SELECT @position AS [position],   
      SUBSTRING(@nstring, @position, 1) AS [character],  
      UNICODE(SUBSTRING(@nstring, @position, 1)) AS [code_point];  
   SET @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

ASCII (Transact-SQL)ASCII (Transact-SQL)
CHAR (Transact-SQL)CHAR (Transact-SQL)
NCHAR (Transact-SQL) NCHAR (Transact-SQL)
文字列関数 (Transact-SQL) String Functions (Transact-SQL)
照合順序と Unicode のサポートCollation and Unicode Support