Collation Locales and Default Parameters¶
New in version 3.4.
Collation allows users to specify language-specific rules for string comparison, such as rules for lettercase and accent marks.
Behavior¶
Some collation locales have variants, which employ special language-specific rules. To specify a locale variant, use the following syntax:
{ "locale" : "<locale code>@collation=<variant>" }
For example, to use the pinyin
variant of the Chinese collation:
{ "locale" : "zh@collation=pinyin" }
See the collation page for a full description of collation behavior and syntax.
Supported Languages and Locales¶
MongoDB’s collation feature supports the following languages. The following table lists the supported languages and the associated locales as defined by ICU Locale ID. [1]
|
|
Tip
To explicitly specify simple binary comparison, specify locale
value of "simple"
.
[1] | To request support for a locale, please file a JIRA ticket with the Server project |
Collation Default Parameters¶
A collation document contains several
optional parameters in
addition to the required locale
parameter. Depending on which
locale
you use, the default parameters may be different.
See the collation page for a
full description of collation syntax.
The following default parameters are consistent across all locales:
caseLevel : false
strength : 3
numericOrdering : false
maxVariable : punct
The following table shows the default collation parameters which may vary across different locales:
Locale | caseFirst | alternate | normalization | backwards |
---|---|---|---|---|
af |
off |
non-ignorable |
FALSE |
FALSE |
sq |
off |
non-ignorable |
FALSE |
FALSE |
am |
off |
non-ignorable |
FALSE |
FALSE |
ar |
off |
non-ignorable |
FALSE |
FALSE |
ar@collation=compat |
off |
non-ignorable |
FALSE |
FALSE |
hy |
off |
non-ignorable |
FALSE |
FALSE |
as |
off |
non-ignorable |
TRUE |
FALSE |
az |
off |
non-ignorable |
FALSE |
FALSE |
az@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
be |
off |
non-ignorable |
FALSE |
FALSE |
bn |
off |
non-ignorable |
TRUE |
FALSE |
bn@collation=traditional |
off |
non-ignorable |
TRUE |
FALSE |
bs |
off |
non-ignorable |
FALSE |
FALSE |
bs@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
bs_Cyrl |
off |
non-ignorable |
FALSE |
FALSE |
bg |
off |
non-ignorable |
FALSE |
FALSE |
my |
off |
non-ignorable |
TRUE |
FALSE |
ca |
off |
non-ignorable |
FALSE |
FALSE |
ca@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
chr |
off |
non-ignorable |
FALSE |
FALSE |
zh |
off |
non-ignorable |
FALSE |
FALSE |
zh@collation=big5han |
off |
non-ignorable |
FALSE |
FALSE |
zh@collation=gb2312han |
off |
non-ignorable |
FALSE |
FALSE |
zh@collation=unihan |
off |
non-ignorable |
FALSE |
FALSE |
zh@collation=zhuyin |
off |
non-ignorable |
FALSE |
FALSE |
zh_Hant |
off |
non-ignorable |
FALSE |
FALSE |
hr |
off |
non-ignorable |
FALSE |
FALSE |
hr@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
cs |
off |
non-ignorable |
FALSE |
FALSE |
cs@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
da |
upper |
non-ignorable |
FALSE |
FALSE |
da@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
nl |
off |
non-ignorable |
FALSE |
FALSE |
dz |
off |
non-ignorable |
FALSE |
FALSE |
en |
off |
non-ignorable |
FALSE |
FALSE |
en_US_POSIX |
off |
non-ignorable |
FALSE |
FALSE |
en_US |
off |
non-ignorable |
FALSE |
FALSE |
eo |
off |
non-ignorable |
FALSE |
FALSE |
et |
off |
non-ignorable |
FALSE |
FALSE |
ee |
off |
non-ignorable |
FALSE |
FALSE |
fo |
off |
non-ignorable |
FALSE |
FALSE |
fo@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
fil |
off |
non-ignorable |
FALSE |
FALSE |
fi |
off |
non-ignorable |
FALSE |
FALSE |
fi@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
fi@collation=traditional |
off |
non-ignorable |
FALSE |
FALSE |
fr |
off |
non-ignorable |
FALSE |
FALSE |
fr_CA |
off |
non-ignorable |
FALSE |
TRUE |
gl |
off |
non-ignorable |
FALSE |
FALSE |
gl@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
ka |
off |
non-ignorable |
FALSE |
FALSE |
de |
off |
non-ignorable |
FALSE |
FALSE |
de@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
de@collation=phonebook |
off |
non-ignorable |
FALSE |
FALSE |
de@collation=eor |
off |
non-ignorable |
FALSE |
FALSE |
de_AT |
off |
non-ignorable |
FALSE |
FALSE |
de_AT@collation=phonebook |
off |
non-ignorable |
FALSE |
FALSE |
el |
off |
non-ignorable |
TRUE |
FALSE |
gu |
off |
non-ignorable |
TRUE |
FALSE |
ha |
off |
non-ignorable |
FALSE |
FALSE |
haw |
off |
non-ignorable |
FALSE |
FALSE |
he |
off |
non-ignorable |
TRUE |
FALSE |
he@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
hi |
off |
non-ignorable |
TRUE |
FALSE |
hu |
off |
non-ignorable |
FALSE |
FALSE |
is |
off |
non-ignorable |
FALSE |
FALSE |
is@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
ig |
off |
non-ignorable |
TRUE |
FALSE |
smn |
off |
non-ignorable |
FALSE |
FALSE |
smn@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
id |
off |
non-ignorable |
FALSE |
FALSE |
ga |
off |
non-ignorable |
FALSE |
FALSE |
it |
off |
non-ignorable |
FALSE |
FALSE |
ja |
off |
non-ignorable |
FALSE |
FALSE |
ja@collation=unihan |
off |
non-ignorable |
FALSE |
FALSE |
kl |
off |
non-ignorable |
FALSE |
FALSE |
kl@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
kn |
off |
non-ignorable |
TRUE |
FALSE |
kn@collation=traditional |
off |
non-ignorable |
TRUE |
FALSE |
kk |
off |
non-ignorable |
FALSE |
FALSE |
km |
off |
non-ignorable |
TRUE |
FALSE |
kok |
off |
non-ignorable |
TRUE |
FALSE |
ko |
off |
non-ignorable |
FALSE |
FALSE |
ko@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
ko@collation=searchjl |
off |
non-ignorable |
TRUE |
FALSE |
ko@collation=unihan |
off |
non-ignorable |
FALSE |
FALSE |
ky |
off |
non-ignorable |
FALSE |
FALSE |
lkt |
off |
non-ignorable |
FALSE |
FALSE |
lo |
off |
non-ignorable |
FALSE |
FALSE |
lv |
off |
non-ignorable |
FALSE |
FALSE |
ln |
off |
non-ignorable |
FALSE |
FALSE |
ln@collation=phonetic |
off |
non-ignorable |
FALSE |
FALSE |
lt |
off |
non-ignorable |
FALSE |
FALSE |
dsb |
off |
non-ignorable |
FALSE |
FALSE |
lb |
off |
non-ignorable |
FALSE |
FALSE |
mk |
off |
non-ignorable |
FALSE |
FALSE |
ms |
off |
non-ignorable |
FALSE |
FALSE |
ml |
off |
non-ignorable |
FALSE |
FALSE |
mt |
upper |
non-ignorable |
FALSE |
FALSE |
mr |
off |
non-ignorable |
TRUE |
FALSE |
mn |
off |
non-ignorable |
FALSE |
FALSE |
ne |
off |
non-ignorable |
FALSE |
FALSE |
se |
off |
non-ignorable |
FALSE |
FALSE |
se@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
nb |
off |
non-ignorable |
FALSE |
FALSE |
nb@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
nn |
off |
non-ignorable |
FALSE |
FALSE |
nn@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
or |
off |
non-ignorable |
TRUE |
FALSE |
om |
off |
non-ignorable |
FALSE |
FALSE |
ps |
off |
non-ignorable |
TRUE |
FALSE |
fa |
off |
non-ignorable |
TRUE |
FALSE |
fa_AF |
off |
non-ignorable |
TRUE |
FALSE |
pl |
off |
non-ignorable |
FALSE |
FALSE |
pt |
off |
non-ignorable |
FALSE |
FALSE |
pa |
off |
non-ignorable |
TRUE |
FALSE |
ro |
off |
non-ignorable |
FALSE |
FALSE |
ru |
off |
non-ignorable |
FALSE |
FALSE |
sr |
off |
non-ignorable |
FALSE |
FALSE |
sr_Latn |
off |
non-ignorable |
FALSE |
FALSE |
sr_Latn@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
si |
off |
non-ignorable |
TRUE |
FALSE |
si@collation=dictionary |
off |
non-ignorable |
TRUE |
FALSE |
sk |
off |
non-ignorable |
FALSE |
FALSE |
sk@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
sl |
off |
non-ignorable |
FALSE |
FALSE |
es |
off |
non-ignorable |
FALSE |
FALSE |
es@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
es@collation=traditional |
off |
non-ignorable |
FALSE |
FALSE |
sw |
off |
non-ignorable |
FALSE |
FALSE |
sv |
off |
non-ignorable |
FALSE |
FALSE |
sv@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
ta |
off |
non-ignorable |
TRUE |
FALSE |
te |
off |
non-ignorable |
TRUE |
FALSE |
th |
off |
shifted | TRUE |
FALSE |
bo |
off |
non-ignorable |
FALSE |
FALSE |
to |
off |
non-ignorable |
FALSE |
FALSE |
tr |
off |
non-ignorable |
FALSE |
FALSE |
tr@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
uk |
off |
non-ignorable |
FALSE |
FALSE |
hsb |
off |
non-ignorable |
FALSE |
FALSE |
ur |
off |
non-ignorable |
FALSE |
FALSE |
ug |
off |
non-ignorable |
FALSE |
FALSE |
vi |
off |
non-ignorable |
TRUE |
FALSE |
vi@collation=traditional |
off |
non-ignorable |
TRUE |
FALSE |
wae |
off |
non-ignorable |
FALSE |
FALSE |
cy |
off |
non-ignorable |
FALSE |
FALSE |
yi |
off |
non-ignorable |
TRUE |
FALSE |
yi@collation=search |
off |
non-ignorable |
TRUE |
FALSE |
yo |
off |
non-ignorable |
TRUE |
FALSE |
zu |
off |
non-ignorable |
FALSE |
FALSE |