Bagikan melalui


UNICODE (Transact-SQL)

Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System (PDW) SQL di Microsoft Fabric Warehouse di Microsoft Fabric

Mengembalikan nilai bilangan bulat, seperti yang ditentukan oleh standar Unicode, untuk karakter pertama ekspresi input.

Konvensi sintaks transact-SQL

Sintaks

UNICODE ( 'ncharacter_expression' )  

Argumen

' ncharacter_expression '
Adalah ekspresi nchar atau nvarchar.

Jenis Kembalian

int

Keterangan

Dalam versi SQL Server yang lebih lama dari SQL Server 2012 (11.x) dan di Azure SQL Database, fungsi UNICODE mengembalikan titik kode UCS-2 dalam rentang 000000 hingga 00FFFFff yang mampu mewakili 65.535 karakter dalam Unicode Basic Multilingual Plane (BMP). Dimulai dengan SQL Server 2012 (11.x), saat menggunakan kolase yang diaktifkan Karakter Tambahan (SC), UNICODE mengembalikan titik kode UTF-16 dalam rentang 000000 hingga 10FFFF. Untuk informasi selengkapnya tentang dukungan Unicode di Mesin Database, lihat Kolate dan Dukungan Unicode.

Contoh

J. Menggunakan UNICODE dan fungsi NCHAR

Contoh berikut menggunakan UNICODE fungsi dan NCHAR untuk mencetak nilai UNICODE dari karakter pertama string Åkergatan 24, dan untuk mencetak karakter pertama yang sebenarnya, Å.

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

Berikut set hasilnya.

----------- -   
197         Å  

B. Menggunakan SUBSTRING, UNICODE, dan CONVERT

Contoh berikut menggunakan SUBSTRINGfungsi , , UNICODEdan CONVERT untuk mencetak nomor karakter, karakter Unicode, dan nilai UNICODE dari masing-masing karakter dalam 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; 

Berikut set hasilnya.

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  

Lihat Juga

ASCII (T-SQL)
CHAR (Transact-SQL)
NCHAR (Transact-SQL)
Fungsi String (Transact-SQL)
Dukungan Kolajeasi dan Unicode