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>
32 lines
4.3 KiB
HTML
32 lines
4.3 KiB
HTML
<a name="dli_08_0171"></a><a name="dli_08_0171"></a>
|
|
|
|
<h1 class="topictitle1">Cartesian JOIN</h1>
|
|
<div id="body8662426"><div class="section" id="dli_08_0171__en-us_topic_0093946981_s8b9fa1a95ffc4f9eafea5f4077165167"><h4 class="sectiontitle">Function</h4><p id="dli_08_0171__en-us_topic_0093946981_a6b52e9cb614c4beba3b4dfa59c120692">Cartesian JOIN joins each record of table A with all records in table B. For example, if there are <em id="dli_08_0171__i382764671117">m</em> records in table A and <em id="dli_08_0171__i080365041112">n</em> records in table B, <em id="dli_08_0171__i1642555151117">m</em> x <em id="dli_08_0171__i955413587113">n</em> records will be generated by Cartesian JOIN.</p>
|
|
</div>
|
|
<div class="section" id="dli_08_0171__en-us_topic_0093946981_saf916ddbfc5c4ba4a9a8652e3cccb79f"><h4 class="sectiontitle">Syntax</h4><div class="codecoloring" codetype="Sql" id="dli_08_0171__screen194061393410"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</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="k">CROSS</span><span class="w"> </span><span class="k">JOIN</span><span class="w"> </span><span class="n">table_reference</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="n">join_condition</span><span class="p">;</span>
|
|
</pre></div></td></tr></table></div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="section" id="dli_08_0171__en-us_topic_0093946981_sf6b41b6ab2bf4801a78b5b0c2eff99ba"><h4 class="sectiontitle">Keyword</h4><p id="dli_08_0171__en-us_topic_0093946981_a4301ada8e8c44979b830c1b5a6c09645">The join_condition is the condition for joining. If join_condition is always true, for example <strong id="dli_08_0171__b8963162781216">1=1</strong>, the join is Cartesian JOIN. Therefore, the number of records output by Cartesian join is equal to the product of the number of records in the joined table. If Cartesian join is required, use the special keyword CROSS JOIN. CROSS JOIN is the standard way to calculate Cartesian product.</p>
|
|
</div>
|
|
<div class="section" id="dli_08_0171__en-us_topic_0093946981_s6f47500efd054225ae5b59608565a4c8"><h4 class="sectiontitle">Precautions</h4><p id="dli_08_0171__en-us_topic_0093946981_af839728aca9d4cf58ef7c8531c996640">The to-be-joined table must exist. Otherwise, an error is reported.</p>
|
|
</div>
|
|
<div class="section" id="dli_08_0171__en-us_topic_0093946981_scc723c9c484f4af0971777d9b176ba90"><h4 class="sectiontitle">Example</h4><p id="dli_08_0171__en-us_topic_0093946981_a42bdc9a25ee04f888056c964f6eaf591">To return all the JOIN results of the student name and course name from the <strong id="dli_08_0171__b17452848172117">student_info</strong> and <strong id="dli_08_0171__b13210175612117">course_info</strong> tables, run the following statement:</p>
|
|
<div class="codecoloring" codetype="Sql" id="dli_08_0171__screen055512337345"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span>
|
|
<span class="normal">2</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">SELECT</span><span class="w"> </span><span class="n">student_info</span><span class="p">.</span><span class="n">name</span><span class="p">,</span><span class="w"> </span><span class="n">course_info</span><span class="p">.</span><span class="n">courseName</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">student_info</span>
|
|
<span class="w"> </span><span class="k">CROSS</span><span class="w"> </span><span class="k">JOIN</span><span class="w"> </span><span class="n">course_info</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="p">(</span><span class="mi">1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">1</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_0165.html">JOIN</a></div>
|
|
</div>
|
|
</div>
|
|
|