NonStop SQL/MP Reference Manual

Table Of Contents
NonStop SQL/MP Reference Manual142115
C-14
Considerations—Character Expressions
that was defined with a COLLATE FRENCH clause, the collation FRENCH is
implicitly associated with the expression even though no COLLATE clause appears
in the expression.
A character expression is explicitly associated with a collation if the expression
itself includes the COLLATE clause. An explicit association with a collation
overrides an implicit association with a collation in the same expression.
COLLATE CHARACTER SET explicitly associates the binary ordering of
character-item values with the expression, overriding any implicit association
with a collation.
If a nested character expression includes more than one COLLATE clause, the
collation explicitly specified at the highest level of the expression is the collation
associated with the expression. For example, the following expression is associated
with the collation SPANISH, even if B is a column associated with collation
FRENCH:
MAX(B COLLATE FRENCH) COLLATE SPANISH
Collation FRENCH is used to compute the MAX value. The result has collation
SPANISH.
Determining the collating sequence for concatenated strings
The collating sequence of a concatenated string is determined by the rules specified
for a comparison operation. For more information, see LC_COLLATE # This case
insensitive collating sequence sorts most of # the accented forms of a, e, i, o, and u
equal to the # unaccented form. # Upshift for a, e, i, o, u -grave -acute -circumflex #
is A, E, I, O, U. Upshift for e-umlaut is E. Upshift # for i-umlaut is I, and upshift for
y-acute is Y. # The actual collating sequence starts here: order_start forward \d032
\d032 # 32 is the space character \d160 \d032 # NBSP (non breaking space) <0>
<0> ... ... <9> <9> <A> <A> ... ... <Z> <Z> <a> <A> ... ... <z> <Z> \d192 <A> #
192 - 195 and 224 - 227 ... <A> # are forms of "A" and "a" \d195 <A> \d224 <A> ...
<A> \d227 <A> \d199 <C> # 199 = C-cedilla \d231 <C> # 231 = c-cedilla \d208
<D> # 208 = Eth \d240 <D> # 240 = eth \d200 <E> # 200 - 203 and 232 - 235 ...
<E> # are forms of "E" and "e" \d203 <E> \d232 <E> ... <E> \d235 <E> \d204 <I>
# 204 - 207 and 236 - 239 ... <I> # are forms of "I" and "i" \d207 <I> \d236 <I> ...
<I> \d239 <I> \d209 <N> # 209 = N-tilde \d241 <N> # 241 = n-tilde \d210 <O> #
210 - 213 and 242 - 245 ... <O> # are forms of "O" and "o" \d213 <O> \d242 <O> ...
<O> \d245 <O> \d217 <U> # 217 - 219 and 249 - 251 ... <U> # are forms of "U"
and "u" \d219 <U> \d249 <U> ... <U> \d251 <U> \d221 <Y> # 221 = Y-acute \d253
<Y> # 253 = y-acute \d255 <Y> # 255 = y-acute \d198 \d198 # 198 = AE \d230
\d230 # 230 = ae \d216 \d216 # 216 = O-slash \d248 \d248 # 248 = o-slash \d197
\d197 # 197 = A-ring \d229 \d197 # 229 - a-ring \d222 \d222 # 222 = Thorn \d254
\d222 # 254 = thorn \d033 <!> # 33 - 47 are symbols ... ... # encoded in sequences
\d047 </> \d173 <-> # 173 = SHY \d058 <:> # 58 - 63 are symbols ... ... # encoded
in sequences \d063 <?> \d064 <@> \d091 <[> # 91 - 96 are symbols ... ... # encoded
in sequences \d096 <•> \d123 <{> # 123 - 126 are symbols ... ... # encoded in
sequences \d126 <~> \d127 IGNORE \d196 "<a><e>" # A-umlaut sorts as string of
a and e \d228 "<a><e>" # a-umlaut sorts as string of a and e \d214 "<o><e>" # O-
umlaut sorts as string of o and e \d246 "<o><e>" # o-umlaut sorts as string of o and
e \d220v "<u><e>" # U-umlaut sorts as string of u and e \d252 "<u><e>" # u-umlaut