ibm-information-center/dist/eclipse/plugins/i5OS.ic.sqlp_5.4.0.1/rbafyicu.htm

117 lines
6.0 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="reference" />
<meta name="DC.Title" content="ICU sort sequence" />
<meta name="abstract" content="When an ICU (International Components for Unicode) sort sequence table is used, the database uses the system's ICU support (Option 39) to determine the weight of the data according to language-specific rules specified by to the locale of the table." />
<meta name="description" content="When an ICU (International Components for Unicode) sort sequence table is used, the database uses the system's ICU support (Option 39) to determine the weight of the data according to language-specific rules specified by to the locale of the table." />
<meta name="DC.Relation" scheme="URI" content="rbafyussisql.htm" />
<meta name="DC.Relation" scheme="URI" content="../nls/rbagsicu.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rbafyicu" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>ICU sort sequence </title>
</head>
<body id="rbafyicu"><a name="rbafyicu"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">ICU sort sequence </h1>
<div><p><span>When an ICU (International Components
for Unicode) sort sequence table is used, the database uses the system's ICU
support (Option 39) to determine the weight of the data according to language-specific
rules specified by to the locale of the table.</span></p>
<div class="section"><p>An ICU sort sequence table named en_us (United States locale)
can sort data differently than another ICU table named fr_FR (French locale)
for example.</p>
</div>
<div class="section"><p>The system's ICU support properly handles data that is not normalized,
producing the same results as if the data were normalized. The system's ICU
sort sequence table can sort all character, graphic, and unicode (UTF-8, UTF-16
and UCS-2) data. </p>
</div>
<div class="section"><p>For example, a UTF-8 character column named NAME contains the
following three names (the hex values of the column are given as well) : </p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th valign="top" id="d0e31">NAME </th>
<th valign="top" id="d0e33">HEX ( NAME )</th>
</tr>
</thead>
<tbody><tr><td valign="top" headers="d0e31 ">Gómez</td>
<td valign="top" headers="d0e33 ">47C3B36D657A</td>
</tr>
<tr><td valign="top" headers="d0e31 ">Gomer</td>
<td valign="top" headers="d0e33 ">476F6D6572 </td>
</tr>
<tr><td valign="top" headers="d0e31 ">Gumby</td>
<td valign="top" headers="d0e33 ">47756D6279</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="section"><p>A *HEX sort sequence will order the NAME values as follows: </p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr valign="top"><th valign="top" id="d0e59">NAME </th>
</tr>
</thead>
<tbody><tr><td valign="top" headers="d0e59 ">Gomer </td>
</tr>
<tr><td valign="top" headers="d0e59 ">Gumby </td>
</tr>
<tr><td valign="top" headers="d0e59 ">Gómez</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="section"><p>An ICU sort sequence table named en_us will correctly order the
NAME values. </p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr valign="top"><th valign="top" id="d0e79">NAME </th>
</tr>
</thead>
<tbody><tr><td valign="top" headers="d0e79 ">Gomer </td>
</tr>
<tr><td valign="top" headers="d0e79 ">Gómez</td>
</tr>
<tr><td valign="top" headers="d0e79 ">Gumby</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="section"><p>When an ICU sort sequence table is specified, the performance
of SQL statements that use the table can be much slower than using a non-ICU
sort sequence table or *HEX sort sequence. The slower performance results
from calling the system's ICU support to get the weighted value for each piece
of data that needs to be sorted. An ICU sort sequence table can provide more
sorting function but at the cost of slower running SQL statements. However,
indexes created with an ICU sort sequence table can be created over columns
to help reduce the need of calling the system's ICU support. In this case
the index key would already contain the ICU weighted value so there is no
need to call the system's ICU support.</p>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rbafyussisql.htm" title="A sort sequence defines how characters in a character set relate to each other when they are compared or ordered. Normalization allows you to compare strings that contain combining characters.">Sort sequences and normalization in SQL</a></div>
</div>
<div class="relinfo"><strong>Related information</strong><br />
<div><a href="../nls/rbagsicu.htm">International Components for Unicode</a></div>
</div>
</div>
</body>
</html>