sql >> Databáze >  >> RDS >> Sqlserver

Jak vrátit hodnotu Unicode pro daný znak v SQL Server – UNICODE()

Jednou z funkcí obsažených v T-SQL je UNICODE() funkce. Tuto funkci můžete použít se serverem SQL Server (a Azure) k vrácení hodnoty Unicode daného znaku.

Tato funkce funguje podobně jako ASCII() funkce, kromě toho, že vrací hodnotu Unicode.

Syntaxe

Zde je oficiální syntaxe:

UNICODE ( 'ncharacter_expression' )

Kde ncharacter_expression je nchar nebo nvarchar výraz, pro který chcete hodnotu Unicode.

Příklad

Takže jako příklad, pokud bychom chtěli zjistit hodnotu Unicode pro znak Euro, mohli bychom udělat toto:

SELECT UNICODE('€');

Výsledek:

8364

Tento výsledek nám ukazuje, že hodnota Unicode pro znak Euro je 8364.

Unicode vs ASCII

UNICODE() funguje podobně jako ASCII() funkce, ale s tou výjimkou, že vrací hodnotu Unicode na rozdíl od hodnoty ASCII.

Všimněte si, že pro prvních 128 znaků jsou hodnoty ASCII a Unicode stejné, a proto tyto dvě funkce poskytnou stejné výsledky pro prvních 128 znaků. Nicméně UNICODE() funkce bude pracovat s mnohem větším rozsahem znaků kvůli omezení 128 znaků standardu ASCII.

Zde je příklad ASCII() a UNICODE() funkce vedle sebe:

SELECT UNICODE('A') AS Unicode, ASCII('A') AS ASCII;

Výsledek:

Unicode  ASCII
-------  -----
65       65

Takže vidíme, že v tomto případě vrátili stejný výsledek. To je způsobeno tím, že písmeno A spadá do rozsahu ASCII kódů (a proto je také zahrnut do rozsahu Unicode).


  1. Chyby T-SQL, úskalí a osvědčené postupy – funkce oken

  2. Jaký je připojovací řetězec sql, který musím použít pro přístup k localhost\SQLEXPRESS s ověřováním Windows nebo ověřováním SQL?

  3. Zápis IDEF1X

  4. Omezení podmínky WHERE col IN (...).