Db2是否支持“不区分重音”的排序规则?

时间:2018-12-19 22:43:17

标签: db2

在Microsoft SQL Server中,可以指定“不区分重音”的排序规则(对于数据库,表或列)。在Db2中有可能吗?

1 个答案:

答案 0 :(得分:1)

查看Unicode Collation Algorithm based collations文章。 整理顺序是在数据库创建时指定的,不能更改。

请参见CREATE DATABASE命令的“收集使用 locale-sensitive-collat​​ion ”子句。

无法在表或列级别指定排序规则顺序,但是可以使用COLLATION_KEY_BIT函数来比较字符串表达式。

select 
  case when c1=c2 then 1 else 0 end r1
, case when COLLATION_KEY_BIT(c1, 'CLDR181_EO_S1')=COLLATION_KEY_BIT(c2, 'CLDR181_EO_S1') then 1 else 0 end r2
from table(values ('Café', 'Cafe')) t(c1, c2);

R1 R2
-- --
 0  1

如果您的数据库具有CLDR181_EO_S1排序规则,则第1列中的结果将为1。