doc-exports/docs/dws/dev/dws_04_1031.html
Lu, Huayi e6fa411af0 DWS DEV 830.201 version
Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com>
Co-authored-by: Lu, Huayi <luhuayi@huawei.com>
Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
2024-05-16 07:24:04 +00:00

63 lines
13 KiB
HTML

<a name="EN-US_TOPIC_0000001809359972"></a><a name="EN-US_TOPIC_0000001809359972"></a>
<h1 class="topictitle1">DELETE</h1>
<div id="body8662426"><div class="section" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_sc38eadebc8e74e1e8200bca116ca55ef"><h4 class="sectiontitle">Function</h4><p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_p2054211361719">Delete data from an HStore table.</p>
</div>
<div class="section" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_s382c620cdede4a91ba5d429f091c14c9"><h4 class="sectiontitle">Precautions</h4><ul id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_u83811bebe7004526bcd5b0d5cb5278d2"><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_li5816751033">To delete all the data from a table, you are advised to use the <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b1029919371002">TRUNCATE</strong> syntax to improve performance and reduce table bloating.</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_li1156243311712">If a single record is deleted from an HStore table, a record of the type <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b7770185317111">D</strong> will be inserted into the delta table. The memory update chain will also be updated to manage concurrency.</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_li8562133319710">If multiple records are deleted from an HStore table at a time, a record of the type <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b7385513837">D</strong> will be inserted for the consecutive deleted records in each CU.</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_li656233315714">In concurrent deletion scenarios, operations on the same CU will get queued in traditional column-store tables and result in low performance. For HStore tables, the operations can be concurrently performed, and the deletion performance can be more than 100 times that of column-store tables.</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_li54736433192">The syntax is fully compatible with column storage. For more information, see the <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b146301038496">UPDATE</strong> syntax.</li></ul>
</div>
<div class="section" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_s63e68d20fc8a4670b54b531fc5722bb9"><h4 class="sectiontitle">Syntax</h4><div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_s60d8dda324084db98740133562841b8c"><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">DELETE</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="p">[</span><span class="w"> </span><span class="k">ONLY</span><span class="w"> </span><span class="p">]</span><span class="w"> </span><span class="k">table_name</span><span class="w"> </span><span class="p">[</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="p">]</span><span class="w"> </span><span class="p">[</span><span class="w"> </span><span class="p">[</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="p">]</span><span class="w"> </span><span class="k">alias</span><span class="w"> </span><span class="p">]</span>
<span class="w"> </span><span class="p">[</span><span class="w"> </span><span class="k">USING</span><span class="w"> </span><span class="n">using_list</span><span class="w"> </span><span class="p">]</span>
<span class="w"> </span><span class="p">[</span><span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">condition</span><span class="w"> </span><span class="p">]</span>
</pre></div></td></tr></table></div>
</div>
</div>
<div class="section" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_s0568dfe900e948eaa67d0a335c26701c"><h4 class="sectiontitle">Parameters</h4><ul id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_ua3cdf4f3c73f4d4f9f931f40929ad83b"><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_la448a7d3789c4ff58ff028d37d8be671"><strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a9a91341bf47d4e76ba08c2b1ea4c14c4">ONLY</strong><p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a747e586cb2464423b50a456e2c0513f5">If <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b1037804819115">ONLY</strong> is specified, only that table is deleted. If <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b1379184841115">ONLY</strong> is not specified, this table and all its sub-tables are deleted.</p>
</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_lc1ea1869abc947bfbff43525ed13b5bb"><strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_aa1749132c9aa4b4fa4b4e85e5d1573ea">table_name</strong><p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a76155b18f70d4296b9d10f43acf2290b">Specifies the name (optionally schema-qualified) of a target table.</p>
<p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a22f6113763154108ab395975a7a305be">Value range: an existing table name</p>
</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_l240d9da52c064a12a06679599c3a27f1"><strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a208b1cefb34548f2bbf0ae61a8813021">alias</strong><p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a0e888f1cf58e48ce93b2144f8cbd6e53">Specifies the alias for the target table.</p>
<p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_ac8936d6d732b47959e8046286dc38da4">Value range: a string. It must comply with the naming convention.</p>
</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_l6f2bf2ae63094b4488040532097a8a6b"><strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a6710d01abd094654b331efd5b25bac18">using_list</strong><p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_a8ad40173192343098f7baa98c38d5c55">Specifies the <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b1821815941618">USING</strong> clause.</p>
</li><li id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_l796ce0e3e76841169a171ff3849bff25"><strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_ac7b4f6dd455c4c3280cfba686de23671">condition</strong><p id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_abbc05041c0314d328643ead456cc0b4c">Specifies an expression that returns a value of type <span id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_text122754712263">boolean</span>. Only rows for which this expression returns <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b19612141114168">true</strong> will be deleted.</p>
</li></ul>
</div>
<div class="section" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_sc62f0ffeacde4228a7e8c56b5a2b85f1"><h4 class="sectiontitle">Example</h4><div class="p" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_p36971532615">Create the <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b14607191861610">reason_t2</strong> table.<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_screen10283202718129"><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>
<span class="normal">5</span>
<span class="normal">6</span>
<span class="normal">7</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">CREATE</span><span class="w"> </span><span class="k">TABLE</span><span class="w"> </span><span class="n">reason_t2</span>
<span class="p">(</span>
<span class="w"> </span><span class="n">TABLE_SK</span><span class="w"> </span><span class="nb">INTEGER</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">TABLE_ID</span><span class="w"> </span><span class="nb">VARCHAR</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span><span class="w"> </span><span class="p">,</span>
<span class="w"> </span><span class="n">TABLE_NA</span><span class="w"> </span><span class="nb">VARCHAR</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
<span class="p">)</span><span class="k">WITH</span><span class="p">(</span><span class="n">ORIENTATION</span><span class="o">=</span><span class="k">COLUMN</span><span class="p">,</span><span class="w"> </span><span class="n">ENABLE_HSTORE</span><span class="o">=</span><span class="k">ON</span><span class="p">);</span>
<span class="k">INSERT</span><span class="w"> </span><span class="k">INTO</span><span class="w"> </span><span class="n">reason_t2</span><span class="w"> </span><span class="k">VALUES</span><span class="w"> </span><span class="p">(</span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="s1">'S01'</span><span class="p">,</span><span class="w"> </span><span class="s1">'StudentA'</span><span class="p">),(</span><span class="mi">2</span><span class="p">,</span><span class="w"> </span><span class="s1">'T01'</span><span class="p">,</span><span class="w"> </span><span class="s1">'TeacherA'</span><span class="p">),(</span><span class="mi">3</span><span class="p">,</span><span class="w"> </span><span class="s1">'T02'</span><span class="p">,</span><span class="w"> </span><span class="s1">'TeacherB'</span><span class="p">);</span>
</pre></div></td></tr></table></div>
</div>
</div>
<div class="p" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_p013110913810">Use the <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b18023267168">WHERE</strong> condition for deletion.<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_screen195632452814"><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">DELETE</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">reason_t2</span><span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">TABLE_SK</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">2</span><span class="p">;</span>
<span class="k">DELETE</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">reason_t2</span><span class="w"> </span><span class="k">AS</span><span class="w"> </span><span class="n">rt2</span><span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">rt2</span><span class="p">.</span><span class="n">TABLE_SK</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">2</span><span class="p">;</span>
</pre></div></td></tr></table></div>
</div>
</div>
<div class="p" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_p1686213115914">Use the <strong id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_b10605241101612">IN</strong> syntax for deletion.<div class="codecoloring" codetype="Sql" id="EN-US_TOPIC_0000001809359972__en-us_topic_0000001441638360_screen1360393011916"><div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span class="normal">1</span></pre></div></td><td class="code"><div><pre><span></span><span class="k">DELETE</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">reason_t2</span><span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">TABLE_SK</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="p">(</span><span class="mi">1</span><span class="p">,</span><span class="mi">3</span><span class="p">);</span>
</pre></div></td></tr></table></div>
</div>
</div>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="dws_04_1026.html">Hybrid Data Warehouse Syntax</a></div>
</div>
</div>