forked from docs/doc-exports
Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com> Co-authored-by: Su, Xiaomeng <suxiaomeng1@huawei.com> Co-committed-by: Su, Xiaomeng <suxiaomeng1@huawei.com>
38 lines
5.0 KiB
HTML
38 lines
5.0 KiB
HTML
<a name="dli_08_0153"></a><a name="dli_08_0153"></a>
|
|
|
|
<h1 class="topictitle1">HAVING Filtering Clause</h1>
|
|
<div id="body8662426"><div class="section" id="dli_08_0153__en-us_topic_0093946762_s7c2e96b8e37c442789d45b390e8579d3"><h4 class="sectiontitle">Function</h4><p id="dli_08_0153__en-us_topic_0093946762_a902089fa7dfa43f183bc38cfd6a07ecd">This statement is used to filter the query results using the HAVING clause.</p>
|
|
</div>
|
|
<div class="section" id="dli_08_0153__en-us_topic_0093946762_se2b978daa0454f53a1a1a293bd5928ad"><h4 class="sectiontitle">Syntax</h4><div class="codecoloring" codetype="Sql" id="dli_08_0153__screen961013622119"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span>
|
|
<span class="normal">4</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span><span class="w"> </span><span class="p">[</span><span class="k">ALL</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="k">DISTINCT</span><span class="p">]</span><span class="w"> </span><span class="n">attr_expr_list</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">table_reference</span>
|
|
<span class="w"> </span><span class="p">[</span><span class="k">WHERE</span><span class="w"> </span><span class="n">where_condition</span><span class="p">]</span>
|
|
<span class="w"> </span><span class="p">[</span><span class="k">GROUP</span><span class="w"> </span><span class="k">BY</span><span class="w"> </span><span class="n">col_name_list</span><span class="p">]</span>
|
|
<span class="w"> </span><span class="k">HAVING</span><span class="w"> </span><span class="n">having_condition</span><span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="section" id="dli_08_0153__en-us_topic_0093946762_s63bbc55eb9f34851be38a84c3ab5a98a"><h4 class="sectiontitle">Keyword</h4><ul id="dli_08_0153__en-us_topic_0093946762_uee7c9a11028a414fb4703c061ccbcf32"><li id="dli_08_0153__en-us_topic_0093946762_lb74cce923ebf4c53bce3637e7702718d">All is used to return repeated rows. By default, all repeated rows are returned. It is followed by asterisks (*) only. Otherwise, an error will occur.</li><li id="dli_08_0153__en-us_topic_0093946762_l2221550887e1435a923584d8e9e3af92">DISTINCT is used to remove the repeated line from the result.</li><li id="dli_08_0153__en-us_topic_0093946762_l1734300519a74692acdb31f10bf108a3">Generally, HAVING and GROUP BY are used together. GROUP BY applies first for grouping and HAVING then applies for filtering. The arithmetic operation and aggregate function are supported by the HAVING clause.</li></ul>
|
|
</div>
|
|
<div class="section" id="dli_08_0153__en-us_topic_0093946762_s442038068c9b441fbcfe273381876168"><h4 class="sectiontitle">Precautions</h4><ul id="dli_08_0153__en-us_topic_0093946762_u846dc5c2bcbf4c5a879062a3d5c162e3"><li id="dli_08_0153__en-us_topic_0093946762_l30cd1ecbc41847e1b3d8f89560c10af6">The to-be-queried table must exist.</li><li id="dli_08_0153__en-us_topic_0093946762_l75234123e4df49f2bbeedb49347c4bba">If the filtering condition is subject to the query results of GROUP BY, the HAVING clause, rather than the WHERE clause, must be used for filtering.</li></ul>
|
|
</div>
|
|
<div class="section" id="dli_08_0153__en-us_topic_0093946762_s01e68eee65ae49f4909a7269263b97c7"><h4 class="sectiontitle">Example</h4><p id="dli_08_0153__en-us_topic_0093946762_a28fedd0539b54238b6d0b56bfab03714">Group the <strong id="dli_08_0153__b84235270694129">student</strong> table according to the <strong id="dli_08_0153__b782382752610">name</strong> field and filter the records in which the maximum score is higher than 95 based on groups.</p>
|
|
<div class="codecoloring" codetype="Sql" id="dli_08_0153__screen1738623511221"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span>
|
|
<span class="normal">3</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span><span class="w"> </span><span class="n">name</span><span class="p">,</span><span class="w"> </span><span class="k">max</span><span class="p">(</span><span class="n">score</span><span class="p">)</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">student</span>
|
|
<span class="w"> </span><span class="k">GROUP</span><span class="w"> </span><span class="k">BY</span><span class="w"> </span><span class="n">name</span>
|
|
<span class="w"> </span><span class="k">HAVING</span><span class="w"> </span><span class="k">max</span><span class="p">(</span><span class="n">score</span><span class="p">)</span><span class="w"> </span><span class="o">></span><span class="mi">95</span><span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="dli_08_0151.html">Filtering</a></div>
|
|
</div>
|
|
</div>
|
|
|