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

90 lines
5.6 KiB
HTML
Raw Permalink Normal View History

2024-04-02 14:02:31 +00:00
<?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="Handle duplicate rows" />
<meta name="abstract" content="When SQL evaluates a select-statement, several rows might qualify to be in the result table, depending on the number of rows that satisfy the select-statement's search condition. Some of the rows in the result table might be duplicates." />
<meta name="description" content="When SQL evaluates a select-statement, several rows might qualify to be in the result table, depending on the number of rows that satisfy the select-statement's search condition. Some of the rows in the result table might be duplicates." />
<meta name="DC.subject" content="SELECT statement, preventing duplicate rows, statements, SELECT, row, preventing duplicate, examples, preventing duplicate rows, DISTINCT keyword, keyword, DISTINCT" />
<meta name="keywords" content="SELECT statement, preventing duplicate rows, statements, SELECT, row, preventing duplicate, examples, preventing duplicate rows, DISTINCT keyword, keyword, DISTINCT" />
<meta name="DC.Relation" scheme="URI" content="rbafytexas.htm" />
<meta name="DC.Relation" scheme="URI" content="rbafyussisql.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="rbafydupl" />
<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>Handle duplicate rows</title>
</head>
<body id="rbafydupl"><a name="rbafydupl"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Handle duplicate rows</h1>
<div><p>When SQL evaluates a select-statement, several rows might qualify
to be in the result table, depending on the number of rows that satisfy the
select-statement's search condition. Some of the rows in the result table
might be duplicates.</p>
<div class="section"><p>You can specify that you do not want any duplicates by using the
DISTINCT keyword, followed by the list of expressions: </p>
<pre><strong>SELECT DISTINCT</strong> JOB, SEX
</pre>
</div>
<div class="section"><p>DISTINCT means you want to select only the unique rows. If a selected
row duplicates another row in the result table, the duplicate row is ignored
(it is not put into the result table). For example, suppose you want a list
of employee job codes. You do not need to know which employee has what job
code. Because it is probable that several people in a department have the
same job code, you can use DISTINCT to ensure that the result table has only
unique values.</p>
</div>
<div class="section"><p>The following example shows how to do this:</p>
<pre> <strong>SELECT DISTINCT</strong> JOB
<strong>FROM</strong> CORPDATA.EMPLOYEE
<strong>WHERE</strong> WORKDEPT = 'D11'</pre>
</div>
<div class="section"><p>The result is two rows:</p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="hsides" border="1" rules="all"><thead align="left"><tr valign="top"><th valign="top" id="d0e74">JOB</th>
</tr>
</thead>
<tbody><tr><td valign="top" headers="d0e74 ">DESIGNER</td>
</tr>
<tr><td valign="top" headers="d0e74 ">MANAGER</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="section"><p>If you do not include DISTINCT in a SELECT clause, you might find
duplicate rows in your result, because SQL returns the <em>JOB</em> column's
value for each row that satisfies the search condition. Null values are treated
as duplicate rows for DISTINCT.</p>
</div>
<div class="section"><p>If you include DISTINCT in a SELECT clause and you also include
a shared-weight sort sequence, fewer values might be returned. The sort sequence
causes values that contain the same characters to be weighted the same. If
'MGR', 'Mgr', and 'mgr' were all in the same table, only one of these values
is returned. </p>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rbafytexas.htm" title="Learn a variety of ways of tailoring your query to gather data using the SELECT statement. One way to do this is to use the SELECT statement in a program to retrieve a specific row (for example, the row for an employee). Furthermore, you can use clauses to gather data in a specific way.">Retrieve data using the SELECT statement</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><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>
</body>
</html>