UNISTR

说明

以国家字符集返回给定的字符数据。数据库的国家字符集可以是 AL16UTF16 或 UTF8。UNISTR 提供了对 Unicode 字符串字面量的支持,让您可以指定字符串中字符的 Unicode 编码值。

Unicode 编码值的格式为 '\xxxx',其中 'xxxx' 是 UCS-2 编码格式中字符的十六进制值。补充字符被编码为两个代码单元,第一个代码单元来自高代理区间(U+D800 至 U+DBFF),第二个代码单元来自低代理区间(U+DC00 至 U+DFFF)。要在字符串本身中包括反斜杠,请在其前面加上另一个反斜杠('\')。

语法

unistr ::=

参数

text_expression

它可以是一个文本字面量或解析为字符数据的表达式

返回值

以国家字符集返回给定的字符数据

示例

示例1: 使用 UNISTR 函数

-- // 没有转义符的情况
Select UNISTR ('中');
UNISTR(text)      |
------------------
中                 |
总数目:1

Select UNISTR ('0x4e2d');
UNISTR(text)      |
------------------
0x4e2d            |
总数目:1

Select UNISTR ('4e2d');
UNISTR(text)      |
------------------
4e2d              |
总数目:1


-- // 有单个转义符的情况
Select UNISTR ('\4e2d');
UNISTR(text)      |
------------------
中                 |
总数目:1

Select UNISTR ('\4e2dd');
UNISTR(text)      |
------------------
中d                |
总数目:1

Select UNISTR ('\4e2dd\4e2d');
UNISTR(text)      |
------------------
中d中               |
总数目:1


--超过0~f
Select UNISTR ('\4e2dq');
UNISTR(text)      |
------------------
中q                |
总数目:1


-- // 有多个转义符的情况
Select UNISTR ('\\4e2dd\4e2d');
UNISTR(text)      |
------------------
\4e2dd中           |
总数目:1

Select UNISTR ('\\中');
UNISTR(text)      |
------------------
\中                |
总数目:1

Select UNISTR ('\\\\中');
UNISTR(text)      |
------------------
\\中               |
总数目:1


-- 结尾是转义符
select UNISTR ('\\\4e2dd\\');
UNISTR(text)      |
------------------
\中d\              |
总数目:1


-- // 传入数据为空的情况
select UNISTR (NULL);
UNISTR(text)      |
------------------
null              |
总数目:1

select UNISTR ('');
UNISTR(text)      |
------------------
总数目:1