Oracle COLLATION() 函数使用指南
Oracle COLLATION()
是一个内置函数,它返回给定表达式的派生排序规则的名称。
Oracle COLLATION()
语法
这里是 Oracle COLLATION()
函数的语法:
COLLATION(expr)
参数
expr
-
必需的。
expr
必须求值为类型为CHAR
、VARCHAR2
、LONG
、NCHAR
或NVARCHAR2
的字符字符串。
返回值
Oracle COLLATION()
函数返回给定表达式的派生排序规则的名称。
此函数返回命名排序规则和伪排序规则。如果派生的排序规则是 Unicode Collation Algorithm (UCA) 排序规则,则函数返回其名称的长格式。此函数在包含它的 SQL 语句编译期间进行评估。如果由于评估 expr 时出现排序规则冲突而导致派生的排序规则未定义,则函数返回 NULL
。
Oracle COLLATION()
示例
这里有几个展示了 Oracle COLLATION()
函数用法的示例。
基本用法
SELECT COLLATION('Hello')
FROM dual;
输出:
COLLATION('HELLO')
_____________________
USING_NLS_COMP
让我们为 COLLATION()
函数传入一个指定了排序规则的表达式,看看会发生什么:
SELECT COLLATION('Hello' COLLATE LATIN_AI)
FROM dual;
输出:
COLLATION('HELLO'COLLATELATIN_AI)
____________________________________
LATIN_AI
在本示例中,我们传入一个 'Hello' COLLATE LATIN_AI
表达式,它指定了 'Hello'
使用的排序规则为 LATIN_AI
,然后 COLLATION()
返回了 LATIN_AI
。
NULL 参数
如果参数为 NULL
, COLLATION()
将返回默认的排序规则。
SET NULL 'NULL';
SELECT
COLLATION(NULL)
FROM dual;
输出:
COLLATION(NULL)
__________________
USING_NLS_COMP
在本示例中,我们使用 SET NULL 'NULL';
语句将 NULL
值显示为 'NULL'
字符串。
结论
Oracle COLLATION()
是一个内置函数,它返回给定表达式的派生排序规则的名称。