blob: 765672c3d23c956f89ec9e7b5e4add568652a377 [file] [log] [blame]
import{_ as l,c,b as o,d as a,e as n,a as p,w as t,r as i,o as r}from"./app-C4AeQnH1.js";const u={};function k(d,s){const e=i("RouteLink");return r(),c("div",null,[s[58]||(s[58]=o(`<h1 id="sql手册" tabindex="-1"><a class="header-anchor" href="#sql手册"><span>SQL手册</span></a></h1><h2 id="元数据操作" tabindex="-1"><a class="header-anchor" href="#元数据操作"><span>元数据操作</span></a></h2><h3 id="数据库管理" tabindex="-1"><a class="header-anchor" href="#数据库管理"><span>数据库管理</span></a></h3><h4 id="创建数据库" tabindex="-1"><a class="header-anchor" href="#创建数据库"><span>创建数据库</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> <span class="token keyword">DATABASE</span> root<span class="token punctuation">.</span>ln</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="查看数据库" tabindex="-1"><a class="header-anchor" href="#查看数据库"><span>查看数据库</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">show</span> <span class="token keyword">databases</span></span>
<span class="line"><span class="token keyword">show</span> <span class="token keyword">databases</span> root<span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"><span class="token keyword">show</span> <span class="token keyword">databases</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="删除数据库" tabindex="-1"><a class="header-anchor" href="#删除数据库"><span>删除数据库</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">DELETE</span> <span class="token keyword">DATABASE</span> root<span class="token punctuation">.</span>ln</span>
<span class="line"><span class="token keyword">DELETE</span> <span class="token keyword">DATABASE</span> root<span class="token punctuation">.</span>sgcc</span>
<span class="line"><span class="token keyword">DELETE</span> <span class="token keyword">DATABASE</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="统计数据库数量" tabindex="-1"><a class="header-anchor" href="#统计数据库数量"><span>统计数据库数量</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">count <span class="token keyword">databases</span></span>
<span class="line">count <span class="token keyword">databases</span> root<span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line">count <span class="token keyword">databases</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line">count <span class="token keyword">databases</span> root<span class="token punctuation">.</span>sgcc</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="时间序列管理" tabindex="-1"><a class="header-anchor" href="#时间序列管理"><span>时间序列管理</span></a></h3><h4 id="创建时间序列" tabindex="-1"><a class="header-anchor" href="#创建时间序列"><span>创建时间序列</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">with</span> datatype<span class="token operator">=</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">,</span>encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span>temperature <span class="token keyword">with</span> datatype<span class="token operator">=</span><span class="token keyword">FLOAT</span><span class="token punctuation">,</span>encoding<span class="token operator">=</span>RLE</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span>hardware <span class="token keyword">with</span> datatype<span class="token operator">=</span><span class="token keyword">TEXT</span><span class="token punctuation">,</span>encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">with</span> datatype<span class="token operator">=</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">,</span>encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">with</span> datatype<span class="token operator">=</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">,</span>encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span>temperature <span class="token keyword">with</span> datatype<span class="token operator">=</span><span class="token keyword">FLOAT</span><span class="token punctuation">,</span>encoding<span class="token operator">=</span>RLE</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>简化版</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">BOOLEAN</span> encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span>temperature <span class="token keyword">FLOAT</span> encoding<span class="token operator">=</span>RLE</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span>hardware <span class="token keyword">TEXT</span> encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">BOOLEAN</span> encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">BOOLEAN</span> encoding<span class="token operator">=</span>PLAIN</span>
<span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span>temperature <span class="token keyword">FLOAT</span> encoding<span class="token operator">=</span>RLE</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>错误提示</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">WITH</span> DATATYPE<span class="token operator">=</span><span class="token keyword">BOOLEAN</span><span class="token punctuation">,</span> ENCODING<span class="token operator">=</span>TS_2DIFF</span>
<span class="line"><span class="token operator">&gt;</span> error: encoding TS_2DIFF does <span class="token operator">not</span> support <span class="token keyword">BOOLEAN</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="创建对齐时间序列" tabindex="-1"><a class="header-anchor" href="#创建对齐时间序列"><span>创建对齐时间序列</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> ALIGNED TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>GPS<span class="token punctuation">(</span>latitude <span class="token keyword">FLOAT</span> encoding<span class="token operator">=</span>PLAIN compressor<span class="token operator">=</span>SNAPPY<span class="token punctuation">,</span> longitude <span class="token keyword">FLOAT</span> encoding<span class="token operator">=</span>PLAIN compressor<span class="token operator">=</span>SNAPPY<span class="token punctuation">)</span> </span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="删除时间序列" tabindex="-1"><a class="header-anchor" href="#删除时间序列"><span>删除时间序列</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span></span>
<span class="line"><span class="token keyword">delete</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span>temperature<span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span>hardware</span>
<span class="line"><span class="token keyword">delete</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"><span class="token keyword">drop</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="查看时间序列" tabindex="-1"><a class="header-anchor" href="#查看时间序列"><span>查看时间序列</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> TIMESERIES</span>
<span class="line"><span class="token keyword">SHOW</span> TIMESERIES <span class="token operator">&lt;</span>Path<span class="token operator">&gt;</span></span>
<span class="line"><span class="token keyword">SHOW</span> TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"><span class="token keyword">SHOW</span> TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"><span class="token keyword">SHOW</span> TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">limit</span> <span class="token number">10</span> <span class="token keyword">offset</span> <span class="token number">10</span></span>
<span class="line"><span class="token keyword">SHOW</span> TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> timeseries <span class="token keyword">contains</span> <span class="token string">&#39;wf01.wt&#39;</span></span>
<span class="line"><span class="token keyword">SHOW</span> TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> dataType<span class="token operator">=</span><span class="token keyword">FLOAT</span></span>
<span class="line"><span class="token keyword">SHOW</span> TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span><span class="token operator">&gt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span> <span class="token operator">and</span> <span class="token keyword">time</span><span class="token operator">&lt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">26</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">SHOW</span> LATEST TIMESERIES</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="统计时间序列数量" tabindex="-1"><a class="header-anchor" href="#统计时间序列数量"><span>统计时间序列数量</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token keyword">status</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">WHERE</span> TIMESERIES <span class="token keyword">contains</span> <span class="token string">&#39;sgcc&#39;</span> </span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">WHERE</span> DATATYPE <span class="token operator">=</span> INT64</span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">WHERE</span> TAGS<span class="token punctuation">(</span>unit<span class="token punctuation">)</span> <span class="token keyword">contains</span> <span class="token string">&#39;c&#39;</span> </span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">WHERE</span> TAGS<span class="token punctuation">(</span>unit<span class="token punctuation">)</span> <span class="token operator">=</span> <span class="token string">&#39;c&#39;</span> </span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">WHERE</span> TIMESERIES <span class="token keyword">contains</span> <span class="token string">&#39;sgcc&#39;</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">level</span> <span class="token operator">=</span> <span class="token number">1</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">WHERE</span> <span class="token keyword">time</span><span class="token operator">&gt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span> <span class="token operator">and</span> <span class="token keyword">time</span><span class="token operator">&lt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">26</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span> <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token number">1</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span> <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token number">2</span></span>
<span class="line">COUNT TIMESERIES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span><span class="token operator">*</span> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span> <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token number">2</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="标签点管理" tabindex="-1"><a class="header-anchor" href="#标签点管理"><span>标签点管理</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">create</span> timeseries root<span class="token punctuation">.</span>turbine<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1<span class="token punctuation">(</span>temprature<span class="token punctuation">)</span> <span class="token keyword">with</span> datatype<span class="token operator">=</span><span class="token keyword">FLOAT</span><span class="token punctuation">,</span> encoding<span class="token operator">=</span>RLE<span class="token punctuation">,</span> compression<span class="token operator">=</span>SNAPPY tags<span class="token punctuation">(</span>tag1<span class="token operator">=</span>v1<span class="token punctuation">,</span> tag2<span class="token operator">=</span>v2<span class="token punctuation">)</span> attributes<span class="token punctuation">(</span>attr1<span class="token operator">=</span>v1<span class="token punctuation">,</span> attr2<span class="token operator">=</span>v2<span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>重命名标签或属性</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>turbine<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1 <span class="token keyword">RENAME</span> tag1 <span class="token keyword">TO</span> newTag1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>重新设置标签或属性的值</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>turbine<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1 <span class="token keyword">SET</span> newTag1<span class="token operator">=</span>newV1<span class="token punctuation">,</span> attr1<span class="token operator">=</span>newV1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>删除已经存在的标签或属性</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>turbine<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1 <span class="token keyword">DROP</span> tag1<span class="token punctuation">,</span> tag2</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>添加新的标签</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>turbine<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1 <span class="token keyword">ADD</span> TAGS tag3<span class="token operator">=</span>v3<span class="token punctuation">,</span> tag4<span class="token operator">=</span>v4</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>添加新的属性</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>turbine<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1 <span class="token keyword">ADD</span> ATTRIBUTES attr3<span class="token operator">=</span>v3<span class="token punctuation">,</span> attr4<span class="token operator">=</span>v4</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>更新插入别名,标签和属性</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>turbine<span class="token punctuation">.</span>d1<span class="token punctuation">.</span>s1 UPSERT ALIAS<span class="token operator">=</span>newAlias TAGS<span class="token punctuation">(</span>tag2<span class="token operator">=</span>newV2<span class="token punctuation">,</span> tag3<span class="token operator">=</span>v3<span class="token punctuation">)</span> ATTRIBUTES<span class="token punctuation">(</span>attr3<span class="token operator">=</span>v3<span class="token punctuation">,</span> attr4<span class="token operator">=</span>v4<span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>使用标签作为过滤条件查询时间序列</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> TIMESERIES <span class="token punctuation">(</span><span class="token operator">&lt;</span><span class="token identifier"><span class="token punctuation">\`</span>PathPattern<span class="token punctuation">\`</span></span><span class="token operator">&gt;</span><span class="token punctuation">)</span>? timeseriesWhereClause</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>返回给定路径的下的所有满足条件的时间序列信息:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span>hardware <span class="token keyword">ADD</span> TAGS unit<span class="token operator">=</span>c</span>
<span class="line"><span class="token keyword">ALTER</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">ADD</span> TAGS description<span class="token operator">=</span>test1</span>
<span class="line"><span class="token keyword">show</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> TAGS<span class="token punctuation">(</span>unit<span class="token punctuation">)</span><span class="token operator">=</span><span class="token string">&#39;c&#39;</span></span>
<span class="line"><span class="token keyword">show</span> timeseries root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> TAGS<span class="token punctuation">(</span>description<span class="token punctuation">)</span> <span class="token keyword">contains</span> <span class="token string">&#39;test1&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>使用标签作为过滤条件统计时间序列数量</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">COUNT TIMESERIES <span class="token punctuation">(</span><span class="token operator">&lt;</span><span class="token identifier"><span class="token punctuation">\`</span>PathPattern<span class="token punctuation">\`</span></span><span class="token operator">&gt;</span><span class="token punctuation">)</span>? timeseriesWhereClause</span>
<span class="line">COUNT TIMESERIES <span class="token punctuation">(</span><span class="token operator">&lt;</span><span class="token identifier"><span class="token punctuation">\`</span>PathPattern<span class="token punctuation">\`</span></span><span class="token operator">&gt;</span><span class="token punctuation">)</span>? timeseriesWhereClause <span class="token keyword">GROUP</span> <span class="token keyword">BY</span> <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token operator">&lt;</span><span class="token keyword">INTEGER</span><span class="token operator">&gt;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><p>返回给定路径的下的所有满足条件的时间序列的数量:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">count timeseries</span>
<span class="line">count timeseries root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> TAGS<span class="token punctuation">(</span>unit<span class="token punctuation">)</span><span class="token operator">=</span><span class="token string">&#39;c&#39;</span></span>
<span class="line">count timeseries root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> TAGS<span class="token punctuation">(</span>unit<span class="token punctuation">)</span><span class="token operator">=</span><span class="token string">&#39;c&#39;</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">level</span> <span class="token operator">=</span> <span class="token number">2</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>创建对齐时间序列:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">create</span> aligned timeseries root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1<span class="token punctuation">(</span>s1 INT32 tags<span class="token punctuation">(</span>tag1<span class="token operator">=</span>v1<span class="token punctuation">,</span> tag2<span class="token operator">=</span>v2<span class="token punctuation">)</span> attributes<span class="token punctuation">(</span>attr1<span class="token operator">=</span>v1<span class="token punctuation">,</span> attr2<span class="token operator">=</span>v2<span class="token punctuation">)</span><span class="token punctuation">,</span> s2 <span class="token keyword">DOUBLE</span> tags<span class="token punctuation">(</span>tag3<span class="token operator">=</span>v3<span class="token punctuation">,</span> tag4<span class="token operator">=</span>v4<span class="token punctuation">)</span> attributes<span class="token punctuation">(</span>attr3<span class="token operator">=</span>v3<span class="token punctuation">,</span> attr4<span class="token operator">=</span>v4<span class="token punctuation">)</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>支持查询:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">show</span> timeseries <span class="token keyword">where</span> TAGS<span class="token punctuation">(</span>tag1<span class="token punctuation">)</span><span class="token operator">=</span><span class="token string">&#39;v1&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="时间序列路径管理" tabindex="-1"><a class="header-anchor" href="#时间序列路径管理"><span>时间序列路径管理</span></a></h3><h4 id="查看路径的所有子路径" tabindex="-1"><a class="header-anchor" href="#查看路径的所有子路径"><span>查看路径的所有子路径</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> CHILD PATHS pathPattern</span>
<span class="line"><span class="token operator">-</span> 查询 root<span class="token punctuation">.</span>ln 的下一层:<span class="token keyword">show</span> child paths root<span class="token punctuation">.</span>ln</span>
<span class="line"><span class="token operator">-</span> 查询形如 root<span class="token punctuation">.</span>xx<span class="token punctuation">.</span>xx<span class="token punctuation">.</span>xx 的路径:<span class="token keyword">show</span> child paths root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="查看路径的所有子节点" tabindex="-1"><a class="header-anchor" href="#查看路径的所有子节点"><span>查看路径的所有子节点</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> CHILD NODES pathPattern</span>
<span class="line"></span>
<span class="line"><span class="token operator">-</span> 查询 root 的下一层:<span class="token keyword">show</span> child nodes root</span>
<span class="line"><span class="token operator">-</span> 查询 root<span class="token punctuation">.</span>ln 的下一层 :<span class="token keyword">show</span> child nodes root<span class="token punctuation">.</span>ln</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="查看设备" tabindex="-1"><a class="header-anchor" href="#查看设备"><span>查看设备</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> devices</span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> devices root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> devices <span class="token keyword">where</span> <span class="token keyword">time</span><span class="token operator">&gt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span> <span class="token operator">and</span> <span class="token keyword">time</span><span class="token operator">&lt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">26</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h5 id="查看设备及其-database-信息" tabindex="-1"><a class="header-anchor" href="#查看设备及其-database-信息"><span>查看设备及其 database 信息</span></a></h5><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> devices <span class="token keyword">with</span> <span class="token keyword">database</span></span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> devices root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">with</span> <span class="token keyword">database</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="统计节点数" tabindex="-1"><a class="header-anchor" href="#统计节点数"><span>统计节点数</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> COUNT NODES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token number">2</span></span>
<span class="line"></span>
<span class="line">IoTDB <span class="token operator">&gt;</span> COUNT NODES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token number">2</span></span>
<span class="line"></span>
<span class="line">IoTDB <span class="token operator">&gt;</span> COUNT NODES root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span><span class="token operator">*</span> <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token number">3</span></span>
<span class="line"></span>
<span class="line">IoTDB <span class="token operator">&gt;</span> COUNT NODES root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span><span class="token punctuation">.</span>temperature <span class="token keyword">LEVEL</span><span class="token operator">=</span><span class="token number">3</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="统计设备数量" tabindex="-1"><a class="header-anchor" href="#统计设备数量"><span>统计设备数量</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> count devices</span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> count devices root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> count devices <span class="token keyword">where</span> <span class="token keyword">time</span><span class="token operator">&gt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span> <span class="token operator">and</span> <span class="token keyword">time</span><span class="token operator">&lt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">26</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="设备模板管理" tabindex="-1"><a class="header-anchor" href="#设备模板管理"><span>设备模板管理</span></a></h3><p><img src="https://alioss.timecho.com/docs/img/模板.png" alt="img" loading="lazy"><br><img src="https://alioss.timecho.com/docs/img/template.jpg" alt="img" loading="lazy"></p><h4 id="创建设备模板" tabindex="-1"><a class="header-anchor" href="#创建设备模板"><span>创建设备模板</span></a></h4><div class="language-Go line-numbers-mode" data-highlighter="prismjs" data-ext="Go" data-title="Go"><pre><code><span class="line">CREATE DEVICE TEMPLATE &lt;templateName&gt; ALIGNED? &#39;(&#39; &lt;measurementId&gt; &lt;attributeClauses&gt; [&#39;,&#39; &lt;measurementId&gt; &lt;attributeClauses&gt;]+ &#39;)&#39;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>创建包含两个非对齐序列的设备模板</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">create</span> device template t1 <span class="token punctuation">(</span>temperature <span class="token keyword">FLOAT</span> encoding<span class="token operator">=</span>RLE<span class="token punctuation">,</span> <span class="token keyword">status</span> <span class="token keyword">BOOLEAN</span> encoding<span class="token operator">=</span>PLAIN compression<span class="token operator">=</span>SNAPPY<span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>创建包含一组对齐序列的设备模板</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">create</span> device template t2 aligned <span class="token punctuation">(</span>lat <span class="token keyword">FLOAT</span> encoding<span class="token operator">=</span>Gorilla<span class="token punctuation">,</span> lon <span class="token keyword">FLOAT</span> encoding<span class="token operator">=</span>Gorilla<span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="挂载设备模板" tabindex="-1"><a class="header-anchor" href="#挂载设备模板"><span>挂载设备模板</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">set</span> DEVICE TEMPLATE t1 <span class="token keyword">to</span> root<span class="token punctuation">.</span>sg1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="激活设备模板" tabindex="-1"><a class="header-anchor" href="#激活设备模板"><span>激活设备模板</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">create</span> timeseries <span class="token keyword">using</span> DEVICE TEMPLATE <span class="token keyword">on</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">set</span> DEVICE TEMPLATE t1 <span class="token keyword">to</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">set</span> DEVICE TEMPLATE t2 <span class="token keyword">to</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">create</span> timeseries <span class="token keyword">using</span> device template <span class="token keyword">on</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">create</span> timeseries <span class="token keyword">using</span> device template <span class="token keyword">on</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d2</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="查看设备模板" tabindex="-1"><a class="header-anchor" href="#查看设备模板"><span>查看设备模板</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> device templates</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>查看某个设备模板下的物理量</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> nodes <span class="token operator">in</span> device template t1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>查看挂载了某个设备模板的路径</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> paths <span class="token keyword">set</span> device template t1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>查看使用了某个设备模板的路径(即模板在该路径上已激活,序列已创建)</li></ul><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">show</span> paths <span class="token keyword">using</span> device template t1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="解除设备模板" tabindex="-1"><a class="header-anchor" href="#解除设备模板"><span>解除设备模板</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">delete</span> timeseries <span class="token keyword">of</span> device template t1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> deactivate device template t1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>批量处理</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">delete</span> timeseries <span class="token keyword">of</span> device template t1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg2<span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> deactivate device template t1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg2<span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="卸载设备模板" tabindex="-1"><a class="header-anchor" href="#卸载设备模板"><span>卸载设备模板</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> unset device template t1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="删除设备模板" tabindex="-1"><a class="header-anchor" href="#删除设备模板"><span>删除设备模板</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">drop</span> device template t1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="数据存活时间管理" tabindex="-1"><a class="header-anchor" href="#数据存活时间管理"><span>数据存活时间管理</span></a></h3><h4 id="设置-ttl" tabindex="-1"><a class="header-anchor" href="#设置-ttl"><span>设置 TTL</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">set</span> ttl <span class="token keyword">to</span> root<span class="token punctuation">.</span>ln <span class="token number">3600000</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">set</span> ttl <span class="token keyword">to</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token number">3600000</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">set</span> ttl <span class="token keyword">to</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token number">3600000</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="取消-ttl" tabindex="-1"><a class="header-anchor" href="#取消-ttl"><span>取消 TTL</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> unset ttl <span class="token keyword">to</span> root<span class="token punctuation">.</span>ln</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> unset ttl <span class="token keyword">to</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> unset ttl <span class="token keyword">to</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="显示-ttl" tabindex="-1"><a class="header-anchor" href="#显示-ttl"><span>显示 TTL</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">SHOW</span> <span class="token keyword">ALL</span> TTL</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">SHOW</span> TTL <span class="token keyword">ON</span> StorageGroupNames</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="写入数据" tabindex="-1"><a class="header-anchor" href="#写入数据"><span>写入数据</span></a></h2><h3 id="写入单列数据" tabindex="-1"><a class="header-anchor" href="#写入单列数据"><span>写入单列数据</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">insert</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span><span class="token keyword">timestamp</span><span class="token punctuation">,</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">values</span><span class="token punctuation">(</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token boolean">true</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">insert</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span><span class="token keyword">timestamp</span><span class="token punctuation">,</span>hardware<span class="token punctuation">)</span> <span class="token keyword">values</span><span class="token punctuation">(</span><span class="token number">1</span><span class="token punctuation">,</span> <span class="token string">&#39;v1&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token punctuation">(</span><span class="token number">2</span><span class="token punctuation">,</span> <span class="token string">&#39;v1&#39;</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="写入多列数据" tabindex="-1"><a class="header-anchor" href="#写入多列数据"><span>写入多列数据</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">insert</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span><span class="token keyword">timestamp</span><span class="token punctuation">,</span> <span class="token keyword">status</span><span class="token punctuation">,</span> hardware<span class="token punctuation">)</span> <span class="token keyword">values</span> <span class="token punctuation">(</span><span class="token number">2</span><span class="token punctuation">,</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token string">&#39;v2&#39;</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">insert</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span><span class="token keyword">timestamp</span><span class="token punctuation">,</span> <span class="token keyword">status</span><span class="token punctuation">,</span> hardware<span class="token punctuation">)</span> <span class="token keyword">VALUES</span> <span class="token punctuation">(</span><span class="token number">3</span><span class="token punctuation">,</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token string">&#39;v3&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token punctuation">(</span><span class="token number">4</span><span class="token punctuation">,</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token string">&#39;v4&#39;</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="使用服务器时间戳" tabindex="-1"><a class="header-anchor" href="#使用服务器时间戳"><span>使用服务器时间戳</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">insert</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">,</span> hardware<span class="token punctuation">)</span> <span class="token keyword">values</span> <span class="token punctuation">(</span><span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token string">&#39;v2&#39;</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="写入对齐时间序列数据" tabindex="-1"><a class="header-anchor" href="#写入对齐时间序列数据"><span>写入对齐时间序列数据</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">create</span> aligned timeseries root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1<span class="token punctuation">(</span>s1 INT32<span class="token punctuation">,</span> s2 <span class="token keyword">DOUBLE</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">insert</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1<span class="token punctuation">(</span><span class="token keyword">timestamp</span><span class="token punctuation">,</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span> aligned <span class="token keyword">values</span><span class="token punctuation">(</span><span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">1</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">insert</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1<span class="token punctuation">(</span><span class="token keyword">timestamp</span><span class="token punctuation">,</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span> aligned <span class="token keyword">values</span><span class="token punctuation">(</span><span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token punctuation">(</span><span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB <span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="加载-tsfile-文件数据" tabindex="-1"><a class="header-anchor" href="#加载-tsfile-文件数据"><span>加载 TsFile 文件数据</span></a></h3><p>load &#39;&lt;path/dir&gt;&#39; [sglevel=int][verify=true/false][onSuccess=delete/none]</p><h4 id="通过指定文件路径-绝对路径-加载单-tsfile-文件" tabindex="-1"><a class="header-anchor" href="#通过指定文件路径-绝对路径-加载单-tsfile-文件"><span>通过指定文件路径(绝对路径)加载单 tsfile 文件</span></a></h4><ul><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39;</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=true</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=false</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; onSuccess=delete</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=true sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=false sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=true onSuccess=none</code></li><li><code>load &#39;/Users/Desktop/data/1575028885956-101-0.tsfile&#39; verify=false sglevel=1 onSuccess=delete</code></li></ul><h4 id="通过指定文件夹路径-绝对路径-批量加载文件" tabindex="-1"><a class="header-anchor" href="#通过指定文件夹路径-绝对路径-批量加载文件"><span>通过指定文件夹路径(绝对路径)批量加载文件</span></a></h4><ul><li><code>load &#39;/Users/Desktop/data&#39;</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=false</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=true</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=true sglevel=1</code></li><li><code>load &#39;/Users/Desktop/data&#39; verify=false sglevel=1 onSuccess=delete</code></li></ul><h2 id="删除数据" tabindex="-1"><a class="header-anchor" href="#删除数据"><span>删除数据</span></a></h2><h3 id="删除单列数据" tabindex="-1"><a class="header-anchor" href="#删除单列数据"><span>删除单列数据</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span><span class="token operator">&lt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">26</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span><span class="token operator">&gt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span> <span class="token operator">and</span> <span class="token keyword">time</span><span class="token operator">&lt;=</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">26</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">10</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">10</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">20</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">10</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">20</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">10</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">20</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">20</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">=</span> <span class="token number">20</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>出错:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">4</span> <span class="token operator">or</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">0</span></span>
<span class="line"></span>
<span class="line">Msg: <span class="token number">303</span>: <span class="token keyword">Check</span> metadata error: <span class="token keyword">For</span> <span class="token keyword">delete</span> statement<span class="token punctuation">,</span> <span class="token keyword">where</span> clause can only contain atomic</span>
<span class="line"></span>
<span class="line">expressions <span class="token operator">like</span> : <span class="token keyword">time</span> <span class="token operator">&gt;</span> XXX<span class="token punctuation">,</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> XXX<span class="token punctuation">,</span> <span class="token operator">or</span> two atomic expressions connected <span class="token keyword">by</span> <span class="token string">&#39;AND&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>删除时间序列中的所有数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="删除多列数据" tabindex="-1"><a class="header-anchor" href="#删除多列数据"><span>删除多列数据</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">26</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>声明式的编程方式:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">delete</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span><span class="token keyword">status</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token function">now</span><span class="token punctuation">(</span><span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line">Msg: The statement <span class="token operator">is</span> executed successfully<span class="token punctuation">.</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="数据查询" tabindex="-1"><a class="header-anchor" href="#数据查询"><span>数据查询</span></a></h2><h3 id="基础查询" tabindex="-1"><a class="header-anchor" href="#基础查询"><span>基础查询</span></a></h3><h4 id="时间过滤查询" tabindex="-1"><a class="header-anchor" href="#时间过滤查询"><span>时间过滤查询</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">08</span>:<span class="token number">00.000</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="根据一个时间区间选择多列数据" tabindex="-1"><a class="header-anchor" href="#根据一个时间区间选择多列数据"><span>根据一个时间区间选择多列数据</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token keyword">status</span><span class="token punctuation">,</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">12</span>:<span class="token number">00.000</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="按照多个时间区间选择同一设备的多列数据" tabindex="-1"><a class="header-anchor" href="#按照多个时间区间选择同一设备的多列数据"><span>按照多个时间区间选择同一设备的多列数据</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token keyword">status</span><span class="token punctuation">,</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token punctuation">(</span><span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">12</span>:<span class="token number">00.000</span><span class="token punctuation">)</span> <span class="token operator">or</span> <span class="token punctuation">(</span><span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">35</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">37</span>:<span class="token number">00.000</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="按照多个时间区间选择不同设备的多列数据" tabindex="-1"><a class="header-anchor" href="#按照多个时间区间选择不同设备的多列数据"><span>按照多个时间区间选择不同设备的多列数据</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">.</span><span class="token keyword">status</span><span class="token punctuation">,</span> wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">.</span>hardware <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln <span class="token keyword">where</span> <span class="token punctuation">(</span><span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">12</span>:<span class="token number">00.000</span><span class="token punctuation">)</span> <span class="token operator">or</span> <span class="token punctuation">(</span><span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">35</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">37</span>:<span class="token number">00.000</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="根据时间降序返回结果集" tabindex="-1"><a class="header-anchor" href="#根据时间降序返回结果集"><span>根据时间降序返回结果集</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">1</span> <span class="token keyword">order</span> <span class="token keyword">by</span> <span class="token keyword">time</span> <span class="token keyword">desc</span> <span class="token keyword">limit</span> <span class="token number">10</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="选择表达式" tabindex="-1"><a class="header-anchor" href="#选择表达式"><span>选择表达式</span></a></h3><h4 id="使用别名" tabindex="-1"><a class="header-anchor" href="#使用别名"><span>使用别名</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1 <span class="token keyword">as</span> temperature<span class="token punctuation">,</span> s2 <span class="token keyword">as</span> speed <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="运算符" tabindex="-1"><a class="header-anchor" href="#运算符"><span>运算符</span></a></h4><h4 id="函数" tabindex="-1"><a class="header-anchor" href="#函数"><span>函数</span></a></h4><p>不支持:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> sin<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">10</span><span class="token punctuation">,</span><span class="token number">100</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">10</span>ms<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h5 id="时间序列查询嵌套表达式" tabindex="-1"><a class="header-anchor" href="#时间序列查询嵌套表达式"><span>时间序列查询嵌套表达式</span></a></h5><p>示例 1:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> a<span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ b<span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">(</span><span class="token punctuation">(</span>a <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">)</span> <span class="token operator">*</span> <span class="token number">2</span> <span class="token operator">-</span> <span class="token number">1</span><span class="token punctuation">)</span> <span class="token operator">%</span> <span class="token number">2</span> <span class="token operator">+</span> <span class="token number">1.5</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ sin<span class="token punctuation">(</span>a <span class="token operator">+</span> sin<span class="token punctuation">(</span>a <span class="token operator">+</span> sin<span class="token punctuation">(</span>b<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token operator">-</span><span class="token punctuation">(</span>a <span class="token operator">+</span> b<span class="token punctuation">)</span> <span class="token operator">*</span> <span class="token punctuation">(</span>sin<span class="token punctuation">(</span>a <span class="token operator">+</span> b<span class="token punctuation">)</span> <span class="token operator">*</span> sin<span class="token punctuation">(</span>a <span class="token operator">+</span> b<span class="token punctuation">)</span> <span class="token operator">+</span> cos<span class="token punctuation">(</span>a <span class="token operator">+</span> b<span class="token punctuation">)</span> <span class="token operator">*</span> cos<span class="token punctuation">(</span>a <span class="token operator">+</span> b<span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token number">1</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>示例 2:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token punctuation">(</span>a <span class="token operator">+</span> b<span class="token punctuation">)</span> <span class="token operator">*</span> <span class="token number">2</span> <span class="token operator">+</span> sin<span class="token punctuation">(</span>a<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg</span>
<span class="line"></span>
<span class="line">示例 <span class="token number">3</span>:</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> <span class="token punctuation">(</span>a <span class="token operator">+</span> <span class="token operator">*</span><span class="token punctuation">)</span> <span class="token operator">/</span> <span class="token number">2</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1</span>
<span class="line"></span>
<span class="line">示例 <span class="token number">4</span>:</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> <span class="token punctuation">(</span>a <span class="token operator">+</span> b<span class="token punctuation">)</span> <span class="token operator">*</span> <span class="token number">3</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h5 id="聚合查询嵌套表达式" tabindex="-1"><a class="header-anchor" href="#聚合查询嵌套表达式"><span>聚合查询嵌套表达式</span></a></h5><p>示例 1:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ sin<span class="token punctuation">(</span><span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token operator">-</span><span class="token function">sum</span><span class="token punctuation">(</span>hardware<span class="token punctuation">)</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token function">sum</span><span class="token punctuation">(</span>hardware<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>示例 2:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">avg</span><span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">)</span><span class="token punctuation">,</span> </span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">(</span><span class="token function">avg</span><span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">)</span> <span class="token operator">*</span> <span class="token number">3</span> <span class="token operator">/</span> <span class="token number">2</span> <span class="token operator">-</span><span class="token number">1</span> </span>
<span class="line"></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>示例 3:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ sin<span class="token punctuation">(</span><span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token operator">-</span><span class="token function">sum</span><span class="token punctuation">(</span>hardware<span class="token punctuation">)</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token function">sum</span><span class="token punctuation">(</span>hardware<span class="token punctuation">)</span> <span class="token keyword">as</span> custom_sum</span>
<span class="line"></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01</span>
<span class="line"></span>
<span class="line"><span class="token keyword">GROUP</span> <span class="token keyword">BY</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">10</span><span class="token punctuation">,</span> <span class="token number">90</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">10</span>ms<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="最新点查询" tabindex="-1"><a class="header-anchor" href="#最新点查询"><span>最新点查询</span></a></h4><p>SQL 语法:</p><div class="language-Go line-numbers-mode" data-highlighter="prismjs" data-ext="Go" data-title="Go"><pre><code><span class="line">select last &lt;Path&gt; [COMMA &lt;Path&gt;]* from &lt; PrefixPath &gt; [COMMA &lt; PrefixPath &gt;]* &lt;whereClause&gt; [ORDER BY TIMESERIES (DESC | ASC)?]</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询 root.ln.wf01.wt01.status 的最新数据点</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token keyword">last</span> <span class="token keyword">status</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询 root.ln.wf01.wt01 下 status,temperature 时间戳大于等于 2017-11-07T23:50:00 的最新数据点</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token keyword">last</span> <span class="token keyword">status</span><span class="token punctuation">,</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">50</span>:<span class="token number">00</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询 root.ln.wf01.wt01 下所有序列的最新数据点,并按照序列名降序排列</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token keyword">last</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">order</span> <span class="token keyword">by</span> timeseries <span class="token keyword">desc</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="查询过滤条件" tabindex="-1"><a class="header-anchor" href="#查询过滤条件"><span>查询过滤条件</span></a></h3><h4 id="时间过滤条件" tabindex="-1"><a class="header-anchor" href="#时间过滤条件"><span>时间过滤条件</span></a></h4><p>选择时间戳大于 2022-01-01T00:05:00.000 的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2022</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择时间戳等于 2022-01-01T00:05:00.000 的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">=</span> <span class="token number">2022</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择时间区间 [2017-11-01T00:05:00.000, 2017-11-01T00:12:00.000) 内的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2022</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">12</span>:<span class="token number">00.000</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="值过滤条件" tabindex="-1"><a class="header-anchor" href="#值过滤条件"><span>值过滤条件</span></a></h4><p>选择值大于 36.5 的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">&gt;</span> <span class="token number">36.5</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择值等于 true 的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token keyword">status</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">status</span> <span class="token operator">=</span> <span class="token boolean">true</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择区间 [36.5,40] 内或之外的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">between</span> <span class="token number">36.5</span> <span class="token operator">and</span> <span class="token number">40</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">not</span> <span class="token operator">between</span> <span class="token number">36.5</span> <span class="token operator">and</span> <span class="token number">40</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择值在特定范围内的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> code <span class="token operator">in</span> <span class="token punctuation">(</span><span class="token string">&#39;200&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;300&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;400&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;500&#39;</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择值在特定范围外的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> code <span class="token operator">not</span> <span class="token operator">in</span> <span class="token punctuation">(</span><span class="token string">&#39;200&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;300&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;400&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;500&#39;</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择值为空的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">is</span> <span class="token boolean">null</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>选择值为非空的数据:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">is</span> <span class="token operator">not</span> <span class="token boolean">null</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="模糊查询" tabindex="-1"><a class="header-anchor" href="#模糊查询"><span>模糊查询</span></a></h4><p>查询 <code>root.sg.d1</code> 下 <code>value</code> 含有<code>&#39;cc&#39;</code>的数据</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">like</span> <span class="token string">&#39;%cc%&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询 <code>root.sg.d1</code> 下 <code>value</code> 中间为 <code>&#39;b&#39;</code>、前后为任意单个字符的数据</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>device <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">like</span> <span class="token string">&#39;_b_&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询 root.sg.d1 下 value 值为26个英文字符组成的字符串</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">regexp</span> <span class="token string">&#39;^[A-Za-z]+$&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询 root.sg.d1 下 value 值为26个小写英文字符组成的字符串且时间大于100的</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">regexp</span> <span class="token string">&#39;^[a-z]+$&#39;</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">100</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="分段分组聚合" tabindex="-1"><a class="header-anchor" href="#分段分组聚合"><span>分段分组聚合</span></a></h3><h4 id="未指定滑动步长的时间区间分组聚合查询" tabindex="-1"><a class="header-anchor" href="#未指定滑动步长的时间区间分组聚合查询"><span>未指定滑动步长的时间区间分组聚合查询</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span><span class="token punctuation">,</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">1</span>d<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="指定滑动步长的时间区间分组聚合查询" tabindex="-1"><a class="header-anchor" href="#指定滑动步长的时间区间分组聚合查询"><span>指定滑动步长的时间区间分组聚合查询</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span><span class="token punctuation">,</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span> <span class="token number">23</span>:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">3</span>h<span class="token punctuation">,</span> <span class="token number">1</span>d<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>滑动步长可以小于聚合窗口</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span><span class="token punctuation">,</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">10</span>:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">4</span>h<span class="token punctuation">,</span> <span class="token number">2</span>h<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="按照自然月份的时间区间分组聚合查询" tabindex="-1"><a class="header-anchor" href="#按照自然月份的时间区间分组聚合查询"><span>按照自然月份的时间区间分组聚合查询</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T01:<span class="token number">00</span>:<span class="token number">00</span> <span class="token keyword">group</span> <span class="token keyword">by</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2019</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">1</span>mo<span class="token punctuation">,</span> <span class="token number">2</span>mo<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>每个时间间隔窗口内都有数据</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">10</span><span class="token operator">-</span><span class="token number">31</span>T00:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2019</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">1</span>mo<span class="token punctuation">,</span> <span class="token number">2</span>mo<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="左开右闭区间" tabindex="-1"><a class="header-anchor" href="#左开右闭区间"><span>左开右闭区间</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">]</span><span class="token punctuation">,</span><span class="token number">1</span>d<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="与分组聚合混合使用" tabindex="-1"><a class="header-anchor" href="#与分组聚合混合使用"><span>与分组聚合混合使用</span></a></h4><p>统计降采样后的数据点个数</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">]</span><span class="token punctuation">,</span><span class="token number">1</span>d<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token keyword">level</span><span class="token operator">=</span><span class="token number">1</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>加上滑动 Step 的降采样后的结果也可以汇总</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span> <span class="token number">23</span>:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">3</span>h<span class="token punctuation">,</span> <span class="token number">1</span>d<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token keyword">level</span><span class="token operator">=</span><span class="token number">1</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="路径层级分组聚合" tabindex="-1"><a class="header-anchor" href="#路径层级分组聚合"><span>路径层级分组聚合</span></a></h4><p>统计不同 database 下 status 序列的数据点个数</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">level</span> <span class="token operator">=</span> <span class="token number">1</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>统计不同设备下 status 序列的数据点个数</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">level</span> <span class="token operator">=</span> <span class="token number">3</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>统计不同 database 下的不同设备中 status 序列的数据点个数</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">level</span> <span class="token operator">=</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">3</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询所有序列下温度传感器 temperature 的最大值</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">level</span> <span class="token operator">=</span> <span class="token number">0</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询某一层级下所有传感器拥有的总数据点数</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">level</span> <span class="token operator">=</span> <span class="token number">2</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="标签分组聚合" tabindex="-1"><a class="header-anchor" href="#标签分组聚合"><span>标签分组聚合</span></a></h4><h5 id="单标签聚合查询" tabindex="-1"><a class="header-anchor" href="#单标签聚合查询"><span>单标签聚合查询</span></a></h5><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> <span class="token function">AVG</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>factory1<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span> TAGS<span class="token punctuation">(</span>city<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h5 id="多标签聚合查询" tabindex="-1"><a class="header-anchor" href="#多标签聚合查询"><span>多标签聚合查询</span></a></h5><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> <span class="token function">avg</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>factory1<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span> TAGS<span class="token punctuation">(</span>city<span class="token punctuation">,</span> workshop<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h5 id="基于时间区间的标签聚合查询" tabindex="-1"><a class="header-anchor" href="#基于时间区间的标签聚合查询"><span>基于时间区间的标签聚合查询</span></a></h5><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> <span class="token function">AVG</span><span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>factory1<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">1000</span><span class="token punctuation">,</span> <span class="token number">10000</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">5</span>s<span class="token punctuation">)</span><span class="token punctuation">,</span> TAGS<span class="token punctuation">(</span>city<span class="token punctuation">,</span> workshop<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="差值分段聚合" tabindex="-1"><a class="header-anchor" href="#差值分段聚合"><span>差值分段聚合</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">group</span> <span class="token keyword">by</span> variation<span class="token punctuation">(</span>controlExpression<span class="token punctuation">[</span><span class="token punctuation">,</span>delta<span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token punctuation">,</span>ignoreNull<span class="token operator">=</span><span class="token boolean">true</span><span class="token operator">/</span><span class="token boolean">false</span><span class="token punctuation">]</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h5 id="delta-0时的等值事件分段" tabindex="-1"><a class="header-anchor" href="#delta-0时的等值事件分段"><span>delta=0时的等值事件分段</span></a></h5><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> __endTime<span class="token punctuation">,</span> <span class="token function">avg</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">count</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">sum</span><span class="token punctuation">(</span>s3<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d <span class="token keyword">group</span> <span class="token keyword">by</span> variation<span class="token punctuation">(</span>s6<span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>指定ignoreNull为false</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> __endTime<span class="token punctuation">,</span> <span class="token function">avg</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">count</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">sum</span><span class="token punctuation">(</span>s3<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d <span class="token keyword">group</span> <span class="token keyword">by</span> variation<span class="token punctuation">(</span>s6<span class="token punctuation">,</span> ignoreNull<span class="token operator">=</span><span class="token boolean">false</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h5 id="delta-0时的差值事件分段" tabindex="-1"><a class="header-anchor" href="#delta-0时的差值事件分段"><span>delta!=0时的差值事件分段</span></a></h5><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> __endTime<span class="token punctuation">,</span> <span class="token function">avg</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">count</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">sum</span><span class="token punctuation">(</span>s3<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d <span class="token keyword">group</span> <span class="token keyword">by</span> variation<span class="token punctuation">(</span>s6<span class="token punctuation">,</span> <span class="token number">4</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="条件分段聚合" tabindex="-1"><a class="header-anchor" href="#条件分段聚合"><span>条件分段聚合</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">group</span> <span class="token keyword">by</span> condition<span class="token punctuation">(</span>predict<span class="token punctuation">,</span><span class="token punctuation">[</span>keep<span class="token operator">&gt;</span><span class="token operator">/</span><span class="token operator">&gt;=</span><span class="token operator">/</span><span class="token operator">=</span><span class="token operator">/</span><span class="token operator">&lt;=</span><span class="token operator">/</span><span class="token operator">&lt;</span><span class="token punctuation">]</span>threshold<span class="token punctuation">,</span><span class="token punctuation">[</span><span class="token punctuation">,</span>ignoreNull<span class="token operator">=</span><span class="token boolean">true</span><span class="token operator">/</span><span class="token boolean">false</span><span class="token punctuation">]</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>查询至少连续两行以上的charging_status=1的数据</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> max_time<span class="token punctuation">(</span>charging_status<span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token function">count</span><span class="token punctuation">(</span>vehicle_status<span class="token punctuation">)</span><span class="token punctuation">,</span>last_value<span class="token punctuation">(</span>soc<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> condition<span class="token punctuation">(</span>charging_status<span class="token operator">=</span><span class="token number">1</span><span class="token punctuation">,</span>KEEP<span class="token operator">&gt;=</span><span class="token number">2</span><span class="token punctuation">,</span>ignoreNull<span class="token operator">=</span><span class="token boolean">true</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>当设置<code>ignoreNull</code>为false时,遇到null值为将其视为一个不满足条件的行,得到结果原先的分组被含null的行拆分</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> max_time<span class="token punctuation">(</span>charging_status<span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token function">count</span><span class="token punctuation">(</span>vehicle_status<span class="token punctuation">)</span><span class="token punctuation">,</span>last_value<span class="token punctuation">(</span>soc<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> condition<span class="token punctuation">(</span>charging_status<span class="token operator">=</span><span class="token number">1</span><span class="token punctuation">,</span>KEEP<span class="token operator">&gt;=</span><span class="token number">2</span><span class="token punctuation">,</span>ignoreNull<span class="token operator">=</span><span class="token boolean">false</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="会话分段聚合" tabindex="-1"><a class="header-anchor" href="#会话分段聚合"><span>会话分段聚合</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">session</span><span class="token punctuation">(</span>timeInterval<span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>按照不同的时间单位设定时间间隔</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> __endTime<span class="token punctuation">,</span><span class="token function">count</span><span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">session</span><span class="token punctuation">(</span><span class="token number">1</span>d<span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>和<code>HAVING</code>、<code>ALIGN BY DEVICE</code>共同使用</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> __endTime<span class="token punctuation">,</span><span class="token function">sum</span><span class="token punctuation">(</span>hardware<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token keyword">session</span><span class="token punctuation">(</span><span class="token number">50</span>s<span class="token punctuation">)</span> <span class="token keyword">having</span> <span class="token function">sum</span><span class="token punctuation">(</span>hardware<span class="token punctuation">)</span><span class="token operator">&gt;</span><span class="token number">0</span> align <span class="token keyword">by</span> device</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="点数分段聚合" tabindex="-1"><a class="header-anchor" href="#点数分段聚合"><span>点数分段聚合</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token function">count</span><span class="token punctuation">(</span>controlExpression<span class="token punctuation">,</span> size<span class="token punctuation">[</span><span class="token punctuation">,</span>ignoreNull<span class="token operator">=</span><span class="token boolean">true</span><span class="token operator">/</span><span class="token boolean">false</span><span class="token punctuation">]</span><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>select count(charging_stauts), first_value(soc) from <a href="http://root.sg" target="_blank" rel="noopener noreferrer">root.sg</a> group by count(charging_status,5)</p><p>当使用ignoreNull将null值也考虑进来</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>charging_stauts<span class="token punctuation">)</span><span class="token punctuation">,</span> first_value<span class="token punctuation">(</span>soc<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token function">count</span><span class="token punctuation">(</span>charging_status<span class="token punctuation">,</span><span class="token number">5</span><span class="token punctuation">,</span>ignoreNull<span class="token operator">=</span><span class="token boolean">false</span><span class="token punctuation">)</span> </span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="聚合结果过滤" tabindex="-1"><a class="header-anchor" href="#聚合结果过滤"><span>聚合结果过滤</span></a></h3><p>不正确的:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token number">3</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">1</span>ms<span class="token punctuation">)</span> <span class="token keyword">having</span> <span class="token function">sum</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token operator">&gt;</span> s1</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token number">3</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">1</span>ms<span class="token punctuation">)</span> <span class="token keyword">having</span> s1 <span class="token operator">&gt;</span> <span class="token number">1</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token number">3</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">1</span>ms<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token keyword">level</span><span class="token operator">=</span><span class="token number">1</span> <span class="token keyword">having</span> <span class="token function">sum</span><span class="token punctuation">(</span>d1<span class="token punctuation">.</span>s1<span class="token punctuation">)</span> <span class="token operator">&gt;</span> <span class="token number">1</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>d1<span class="token punctuation">.</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token number">3</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">1</span>ms<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token keyword">level</span><span class="token operator">=</span><span class="token number">1</span> <span class="token keyword">having</span> <span class="token function">sum</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token operator">&gt;</span> <span class="token number">1</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>SQL 示例:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"> <span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token number">11</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">2</span>ms<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token keyword">level</span><span class="token operator">=</span><span class="token number">1</span> <span class="token keyword">having</span> <span class="token function">count</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token operator">&gt;</span> <span class="token number">2</span><span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token function">count</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token number">11</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">2</span>ms<span class="token punctuation">)</span> <span class="token keyword">having</span> <span class="token function">count</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token operator">&gt;</span> <span class="token number">1</span> align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="结果集补空值" tabindex="-1"><a class="header-anchor" href="#结果集补空值"><span>结果集补空值</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">FILL <span class="token string">&#39;(&#39;</span> PREVIOUS <span class="token operator">|</span> LINEAR <span class="token operator">|</span> constant <span class="token punctuation">(</span><span class="token punctuation">,</span> <span class="token keyword">interval</span><span class="token operator">=</span>DURATION_LITERAL<span class="token punctuation">)</span>? <span class="token string">&#39;)&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="previous-填充" tabindex="-1"><a class="header-anchor" href="#previous-填充"><span><code>PREVIOUS</code> 填充</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature<span class="token punctuation">,</span> <span class="token keyword">status</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">37</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">40</span>:<span class="token number">00.000</span> fill<span class="token punctuation">(</span>previous<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="previous-填充并指定填充超时阈值" tabindex="-1"><a class="header-anchor" href="#previous-填充并指定填充超时阈值"><span><code>PREVIOUS</code> 填充并指定填充超时阈值</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature<span class="token punctuation">,</span> <span class="token keyword">status</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">37</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">40</span>:<span class="token number">00.000</span> fill<span class="token punctuation">(</span>previous<span class="token punctuation">,</span> <span class="token number">2</span>m<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="linear-填充" tabindex="-1"><a class="header-anchor" href="#linear-填充"><span><code>LINEAR</code> 填充</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature<span class="token punctuation">,</span> <span class="token keyword">status</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">37</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">40</span>:<span class="token number">00.000</span> fill<span class="token punctuation">(</span>linear<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="常量填充" tabindex="-1"><a class="header-anchor" href="#常量填充"><span>常量填充</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature<span class="token punctuation">,</span> <span class="token keyword">status</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">37</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">40</span>:<span class="token number">00.000</span> fill<span class="token punctuation">(</span><span class="token number">2.0</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>使用 <code>BOOLEAN</code> 类型的常量填充</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> temperature<span class="token punctuation">,</span> <span class="token keyword">status</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sgcc<span class="token punctuation">.</span>wf03<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">37</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T16:<span class="token number">40</span>:<span class="token number">00.000</span> fill<span class="token punctuation">(</span><span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="查询结果分页" tabindex="-1"><a class="header-anchor" href="#查询结果分页"><span>查询结果分页</span></a></h3><h4 id="按行分页" tabindex="-1"><a class="header-anchor" href="#按行分页"><span>按行分页</span></a></h4><p>基本的 <code>LIMIT</code> 子句</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token keyword">status</span><span class="token punctuation">,</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">limit</span> <span class="token number">10</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>带 <code>OFFSET</code> 的 <code>LIMIT</code> 子句</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token keyword">status</span><span class="token punctuation">,</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">limit</span> <span class="token number">5</span> <span class="token keyword">offset</span> <span class="token number">3</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p><code>LIMIT</code> 子句与 <code>WHERE</code> 子句结合</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token keyword">status</span><span class="token punctuation">,</span>temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span><span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">12</span>:<span class="token number">00.000</span> <span class="token keyword">limit</span> <span class="token number">5</span> <span class="token keyword">offset</span> <span class="token number">3</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p><code>LIMIT</code> 子句与 <code>GROUP BY</code> 子句组合</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span><span class="token punctuation">,</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">1</span>d<span class="token punctuation">)</span> <span class="token keyword">limit</span> <span class="token number">4</span> <span class="token keyword">offset</span> <span class="token number">3</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="按列分页" tabindex="-1"><a class="header-anchor" href="#按列分页"><span>按列分页</span></a></h4><p>基本的 <code>SLIMIT</code> 子句</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">12</span>:<span class="token number">00.000</span> slimit <span class="token number">1</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>带 <code>SOFFSET</code> 的 <code>SLIMIT</code> 子句</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">05</span>:<span class="token number">00.000</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&lt;</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">12</span>:<span class="token number">00.000</span> slimit <span class="token number">1</span> soffset <span class="token number">1</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p><code>SLIMIT</code> 子句与 <code>GROUP BY</code> 子句结合</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> max_value<span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">,</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">07</span>T23:<span class="token number">00</span>:<span class="token number">00</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token number">1</span>d<span class="token punctuation">)</span> slimit <span class="token number">1</span> soffset <span class="token number">1</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p><code>SLIMIT</code> 子句与 <code>LIMIT</code> 子句结合</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01 <span class="token keyword">limit</span> <span class="token number">10</span> <span class="token keyword">offset</span> <span class="token number">100</span> slimit <span class="token number">2</span> soffset <span class="token number">0</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="排序" tabindex="-1"><a class="header-anchor" href="#排序"><span>排序</span></a></h3><p>时间对齐模式下的排序</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">01</span>:<span class="token number">00</span> <span class="token keyword">order</span> <span class="token keyword">by</span> <span class="token keyword">time</span> <span class="token keyword">desc</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>设备对齐模式下的排序</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">01</span>:<span class="token number">00</span> <span class="token keyword">order</span> <span class="token keyword">by</span> device <span class="token keyword">desc</span><span class="token punctuation">,</span><span class="token keyword">time</span> <span class="token keyword">asc</span> align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>在时间戳相等时按照设备名排序</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">01</span>:<span class="token number">00</span> <span class="token keyword">order</span> <span class="token keyword">by</span> <span class="token keyword">time</span> <span class="token keyword">asc</span><span class="token punctuation">,</span>device <span class="token keyword">desc</span> align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>没有显式指定时</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">01</span>:<span class="token number">00</span> align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>对聚合后的结果进行排序</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">00</span>:<span class="token number">00.000</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">,</span><span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">03</span>:<span class="token number">00.000</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">]</span><span class="token punctuation">,</span><span class="token number">1</span>m<span class="token punctuation">)</span> <span class="token keyword">order</span> <span class="token keyword">by</span> device <span class="token keyword">asc</span><span class="token punctuation">,</span><span class="token keyword">time</span> <span class="token keyword">asc</span> align <span class="token keyword">by</span> device</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="查询对齐模式" tabindex="-1"><a class="header-anchor" href="#查询对齐模式"><span>查询对齐模式</span></a></h3><h4 id="按设备对齐" tabindex="-1"><a class="header-anchor" href="#按设备对齐"><span>按设备对齐</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span> <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2017</span><span class="token operator">-</span><span class="token number">11</span><span class="token operator">-</span><span class="token number">01</span>T00:<span class="token number">01</span>:<span class="token number">00</span> align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="查询写回-select-into" tabindex="-1"><a class="header-anchor" href="#查询写回-select-into"><span>查询写回(SELECT INTO)</span></a></h3><h4 id="整体描述" tabindex="-1"><a class="header-anchor" href="#整体描述"><span>整体描述</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">selectIntoStatement</span>
<span class="line"></span>
<span class="line">​ : <span class="token keyword">SELECT</span></span>
<span class="line"></span>
<span class="line">​ resultColumn <span class="token punctuation">[</span><span class="token punctuation">,</span> resultColumn<span class="token punctuation">]</span> <span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span></span>
<span class="line"></span>
<span class="line">​ <span class="token keyword">INTO</span> intoItem <span class="token punctuation">[</span><span class="token punctuation">,</span> intoItem<span class="token punctuation">]</span> <span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span></span>
<span class="line"></span>
<span class="line">​ <span class="token keyword">FROM</span> prefixPath <span class="token punctuation">[</span><span class="token punctuation">,</span> prefixPath<span class="token punctuation">]</span> <span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">[</span><span class="token keyword">WHERE</span> whereCondition<span class="token punctuation">]</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">[</span><span class="token keyword">GROUP</span> <span class="token keyword">BY</span> groupByTimeClause<span class="token punctuation">,</span> groupByLevelClause<span class="token punctuation">]</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">[</span>FILL <span class="token punctuation">(</span>{PREVIOUS <span class="token operator">|</span> LINEAR <span class="token operator">|</span> constant} <span class="token punctuation">(</span><span class="token punctuation">,</span> <span class="token keyword">interval</span><span class="token operator">=</span>DURATION_LITERAL<span class="token punctuation">)</span>?<span class="token punctuation">)</span><span class="token punctuation">]</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">[</span><span class="token keyword">LIMIT</span> rowLimit <span class="token keyword">OFFSET</span> rowOffset<span class="token punctuation">]</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">[</span>ALIGN <span class="token keyword">BY</span> DEVICE<span class="token punctuation">]</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">intoItem</span>
<span class="line"></span>
<span class="line">​ : <span class="token punctuation">[</span>ALIGNED<span class="token punctuation">]</span> intoDevicePath <span class="token string">&#39;(&#39;</span> intoMeasurementName <span class="token punctuation">[</span><span class="token string">&#39;,&#39;</span> intoMeasurementName<span class="token punctuation">]</span><span class="token operator">*</span> <span class="token string">&#39;)&#39;</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>按时间对齐,将 <code>root.sg</code> database 下四条序列的查询结果写入到 <code>root.sg_copy</code> database 下指定的四条序列中</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> s1<span class="token punctuation">,</span> s2 <span class="token keyword">into</span> root<span class="token punctuation">.</span>sg_copy<span class="token punctuation">.</span>d1<span class="token punctuation">(</span>t1<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg_copy<span class="token punctuation">.</span>d2<span class="token punctuation">(</span>t1<span class="token punctuation">,</span> t2<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg_copy<span class="token punctuation">.</span>d1<span class="token punctuation">(</span>t2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d2<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>按时间对齐,将聚合查询的结果存储到指定序列中</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span>s1 <span class="token operator">+</span> s2<span class="token punctuation">)</span><span class="token punctuation">,</span> last_value<span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token keyword">into</span> root<span class="token punctuation">.</span>agg<span class="token punctuation">.</span><span class="token function">count</span><span class="token punctuation">(</span>s1_add_s2<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>agg<span class="token punctuation">.</span>last_value<span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">group</span> <span class="token keyword">by</span> <span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">100</span><span class="token punctuation">)</span><span class="token punctuation">,</span> <span class="token number">10</span>ms<span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>按设备对齐</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> s1<span class="token punctuation">,</span> s2 <span class="token keyword">into</span> root<span class="token punctuation">.</span>sg_copy<span class="token punctuation">.</span>d1<span class="token punctuation">(</span>t1<span class="token punctuation">,</span> t2<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg_copy<span class="token punctuation">.</span>d2<span class="token punctuation">(</span>t1<span class="token punctuation">,</span> t2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d2 align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>按设备对齐,将表达式计算的结果存储到指定序列中</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line">IoTDB<span class="token operator">&gt;</span> <span class="token keyword">select</span> s1 <span class="token operator">+</span> s2 <span class="token keyword">into</span> root<span class="token punctuation">.</span>expr<span class="token punctuation">.</span><span class="token keyword">add</span><span class="token punctuation">(</span>d1s1_d1s2<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>expr<span class="token punctuation">.</span><span class="token keyword">add</span><span class="token punctuation">(</span>d2s1_d2s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">,</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d2 align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="使用变量占位符" tabindex="-1"><a class="header-anchor" href="#使用变量占位符"><span>使用变量占位符</span></a></h4><h5 id="按时间对齐-默认" tabindex="-1"><a class="header-anchor" href="#按时间对齐-默认"><span>按时间对齐(默认)</span></a></h5><h6 id="目标设备不使用变量占位符-目标物理量列表使用变量占位符" tabindex="-1"><a class="header-anchor" href="#目标设备不使用变量占位符-目标物理量列表使用变量占位符"><span>目标设备不使用变量占位符 &amp; 目标物理量列表使用变量占位符</span></a></h6><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line"></span>
<span class="line">select s1, s2</span>
<span class="line"></span>
<span class="line">into root.sg_copy.d1(::), root.sg_copy.d2(s1), root.sg_copy.d1(\${3}), root.sg_copy.d2(::)</span>
<span class="line"></span>
<span class="line">from root.sg.d1, root.sg.d2;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>该语句等价于:</p><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line"></span>
<span class="line">select s1, s2</span>
<span class="line"></span>
<span class="line">into root.sg_copy.d1(s1), root.sg_copy.d2(s1), root.sg_copy.d1(s2), root.sg_copy.d2(s2)</span>
<span class="line"></span>
<span class="line">from root.sg.d1, root.sg.d2;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h6 id="目标设备使用变量占位符-目标物理量列表不使用变量占位符" tabindex="-1"><a class="header-anchor" href="#目标设备使用变量占位符-目标物理量列表不使用变量占位符"><span>目标设备使用变量占位符 &amp; 目标物理量列表不使用变量占位符</span></a></h6><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line">select d1.s1, d1.s2, d2.s3, d3.s4 </span>
<span class="line"></span>
<span class="line">into ::(s1_1, s2_2), root.sg.d2_2(s3_3), root.\${2}_copy.::(s4)</span>
<span class="line"></span>
<span class="line">from root.sg;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h6 id="目标设备使用变量占位符-目标物理量列表使用变量占位符" tabindex="-1"><a class="header-anchor" href="#目标设备使用变量占位符-目标物理量列表使用变量占位符"><span>目标设备使用变量占位符 &amp; 目标物理量列表使用变量占位符</span></a></h6><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line">select * into root.sg_bk.::(::) from root.sg.**;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h5 id="按设备对齐-使用-align-by-device" tabindex="-1"><a class="header-anchor" href="#按设备对齐-使用-align-by-device"><span>按设备对齐(使用 <code>ALIGN BY DEVICE</code>)</span></a></h5><h6 id="目标设备不使用变量占位符-目标物理量列表使用变量占位符-1" tabindex="-1"><a class="header-anchor" href="#目标设备不使用变量占位符-目标物理量列表使用变量占位符-1"><span>目标设备不使用变量占位符 &amp; 目标物理量列表使用变量占位符</span></a></h6><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line"></span>
<span class="line">select s1, s2, s3, s4</span>
<span class="line"></span>
<span class="line">into root.backup_sg.d1(s1, s2, s3, s4), root.backup_sg.d2(::), root.sg.d3(backup_\${4})</span>
<span class="line"></span>
<span class="line">from root.sg.d1, root.sg.d2, root.sg.d3</span>
<span class="line"></span>
<span class="line">align by device;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h6 id="目标设备使用变量占位符-目标物理量列表不使用变量占位符-1" tabindex="-1"><a class="header-anchor" href="#目标设备使用变量占位符-目标物理量列表不使用变量占位符-1"><span>目标设备使用变量占位符 &amp; 目标物理量列表不使用变量占位符</span></a></h6><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line"></span>
<span class="line">select avg(s1), sum(s2) + sum(s3), count(s4)</span>
<span class="line"></span>
<span class="line">into root.agg_\${2}.::(avg_s1, sum_s2_add_s3, count_s4)</span>
<span class="line"></span>
<span class="line">from root.**</span>
<span class="line"></span>
<span class="line">align by device;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h6 id="目标设备使用变量占位符-目标物理量列表使用变量占位符-1" tabindex="-1"><a class="header-anchor" href="#目标设备使用变量占位符-目标物理量列表使用变量占位符-1"><span>目标设备使用变量占位符 &amp; 目标物理量列表使用变量占位符</span></a></h6><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line"></span>
<span class="line">select * into ::(backup_\${4}) from root.sg.** align by device;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="指定目标序列为对齐序列" tabindex="-1"><a class="header-anchor" href="#指定目标序列为对齐序列"><span>指定目标序列为对齐序列</span></a></h4><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line"></span>
<span class="line">select s1, s2 into root.sg_copy.d1(t1, t2), aligned root.sg_copy.d2(t1, t2) from root.sg.d1, root.sg.d2 align by device;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="运维语句" tabindex="-1"><a class="header-anchor" href="#运维语句"><span>运维语句</span></a></h2><p>生成对应的查询计划</p><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line">explain select s1,s2 from root.sg.d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><p>执行对应的查询语句,并获取分析结果</p><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line">explain analyze select s1,s2 from root.sg.d1 order by s1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="运算符-1" tabindex="-1"><a class="header-anchor" href="#运算符-1"><span>运算符</span></a></h2>`,366)),a("p",null,[s[1]||(s[1]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E7%AE%97%E6%95%B0%E8%BF%90%E7%AE%97%E7%AC%A6%E5%92%8C%E5%87%BD%E6%95%B0"},{default:t(()=>s[0]||(s[0]=[n("Operator-and-Expression")])),_:1})]),s[59]||(s[59]=a("h3",{id:"算数运算符",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#算数运算符"},[a("span",null,"算数运算符")])],-1)),a("p",null,[s[3]||(s[3]=n("更多见文档 ")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E7%AE%97%E6%95%B0%E8%BF%90%E7%AE%97%E7%AC%A6%E5%92%8C%E5%87%BD%E6%95%B0"},{default:t(()=>s[2]||(s[2]=[n("Arithmetic Operators and Functions")])),_:1})]),s[60]||(s[60]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> <span class="token operator">-</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> <span class="token operator">+</span> s2<span class="token punctuation">,</span> s1 <span class="token operator">+</span> s2<span class="token punctuation">,</span> s1 <span class="token operator">-</span> s2<span class="token punctuation">,</span> s1 <span class="token operator">*</span> s2<span class="token punctuation">,</span> s1 <span class="token operator">/</span> s2<span class="token punctuation">,</span> s1 <span class="token operator">%</span> s2 <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="比较运算符" tabindex="-1"><a class="header-anchor" href="#比较运算符"><span>比较运算符</span></a></h3>`,2)),a("p",null,[s[5]||(s[5]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E6%AF%94%E8%BE%83%E8%BF%90%E7%AE%97%E7%AC%A6%E5%92%8C%E5%87%BD%E6%95%B0"},{default:t(()=>s[4]||(s[4]=[n("Comparison Operators and Functions")])),_:1})]),s[61]||(s[61]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># Basic comparison operators</span></span>
<span class="line"><span class="token keyword">select</span> a<span class="token punctuation">,</span> b<span class="token punctuation">,</span> a <span class="token operator">&gt;</span> <span class="token number">10</span><span class="token punctuation">,</span> a <span class="token operator">&lt;=</span> b<span class="token punctuation">,</span> <span class="token operator">!</span><span class="token punctuation">(</span>a <span class="token operator">&lt;=</span> b<span class="token punctuation">)</span><span class="token punctuation">,</span> a <span class="token operator">&gt;</span> <span class="token number">10</span> <span class="token operator">&amp;&amp;</span> a <span class="token operator">&gt;</span> b <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># \`BETWEEN ... AND ...\` operator</span></span>
<span class="line"><span class="token keyword">select</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">between</span> <span class="token number">36.5</span> <span class="token operator">and</span> <span class="token number">40</span><span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">not</span> <span class="token operator">between</span> <span class="token number">36.5</span> <span class="token operator">and</span> <span class="token number">40</span><span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Fuzzy matching operator: Use \`Like\` for fuzzy matching</span></span>
<span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">like</span> <span class="token string">&#39;%cc%&#39;</span></span>
<span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>device <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">like</span> <span class="token string">&#39;_b_&#39;</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Fuzzy matching operator: Use \`Regexp\` for fuzzy matching</span></span>
<span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">regexp</span> <span class="token string">&#39;^[A-Za-z]+$&#39;</span></span>
<span class="line"><span class="token keyword">select</span> <span class="token operator">*</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">value</span> <span class="token operator">regexp</span> <span class="token string">&#39;^[a-z]+$&#39;</span> <span class="token operator">and</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">100</span></span>
<span class="line"><span class="token keyword">select</span> b<span class="token punctuation">,</span> b <span class="token operator">like</span> <span class="token string">&#39;1%&#39;</span><span class="token punctuation">,</span> b <span class="token operator">regexp</span> <span class="token string">&#39;[0-2]&#39;</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># \`IS NULL\` operator</span></span>
<span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">is</span> <span class="token boolean">null</span><span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> temperature <span class="token operator">is</span> <span class="token operator">not</span> <span class="token boolean">null</span><span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># \`IN\` operator</span></span>
<span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> code <span class="token operator">in</span> <span class="token punctuation">(</span><span class="token string">&#39;200&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;300&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;400&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;500&#39;</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> code <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> code <span class="token operator">not</span> <span class="token operator">in</span> <span class="token punctuation">(</span><span class="token string">&#39;200&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;300&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;400&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;500&#39;</span><span class="token punctuation">)</span><span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> a<span class="token punctuation">,</span> a <span class="token operator">in</span> <span class="token punctuation">(</span><span class="token number">1</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="逻辑运算符" tabindex="-1"><a class="header-anchor" href="#逻辑运算符"><span>逻辑运算符</span></a></h3>`,2)),a("p",null,[s[7]||(s[7]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E9%80%BB%E8%BE%91%E8%BF%90%E7%AE%97%E7%AC%A6"},{default:t(()=>s[6]||(s[6]=[n("Logical Operators")])),_:1})]),s[62]||(s[62]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> a<span class="token punctuation">,</span> b<span class="token punctuation">,</span> a <span class="token operator">&gt;</span> <span class="token number">10</span><span class="token punctuation">,</span> a <span class="token operator">&lt;=</span> b<span class="token punctuation">,</span> <span class="token operator">!</span><span class="token punctuation">(</span>a <span class="token operator">&lt;=</span> b<span class="token punctuation">)</span><span class="token punctuation">,</span> a <span class="token operator">&gt;</span> <span class="token number">10</span> <span class="token operator">&amp;&amp;</span> a <span class="token operator">&gt;</span> b <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="内置函数" tabindex="-1"><a class="header-anchor" href="#内置函数"><span>内置函数</span></a></h2>`,2)),a("p",null,[s[9]||(s[9]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E8%81%9A%E5%90%88%E5%87%BD%E6%95%B0"},{default:t(()=>s[8]||(s[8]=[n("Operator-and-Expression")])),_:1})]),s[63]||(s[63]=a("h3",{id:"aggregate-functions",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#aggregate-functions"},[a("span",null,"Aggregate Functions")])],-1)),a("p",null,[s[11]||(s[11]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E8%81%9A%E5%90%88%E5%87%BD%E6%95%B0"},{default:t(()=>s[10]||(s[10]=[n("Aggregate Functions")])),_:1})]),s[64]||(s[64]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> <span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">status</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> count_if<span class="token punctuation">(</span>s1<span class="token operator">=</span><span class="token number">0</span> <span class="token operator">&amp;</span> s2<span class="token operator">=</span><span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">)</span><span class="token punctuation">,</span> count_if<span class="token punctuation">(</span>s1<span class="token operator">=</span><span class="token number">1</span> <span class="token operator">&amp;</span> s2<span class="token operator">=</span><span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>db<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> count_if<span class="token punctuation">(</span>s1<span class="token operator">=</span><span class="token number">0</span> <span class="token operator">&amp;</span> s2<span class="token operator">=</span><span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token string">&#39;ignoreNull&#39;</span><span class="token operator">=</span><span class="token string">&#39;false&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span> count_if<span class="token punctuation">(</span>s1<span class="token operator">=</span><span class="token number">1</span> <span class="token operator">&amp;</span> s2<span class="token operator">=</span><span class="token number">0</span><span class="token punctuation">,</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token string">&#39;ignoreNull&#39;</span><span class="token operator">=</span><span class="token string">&#39;false&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>db<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> time_duration<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>db<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="算数函数" tabindex="-1"><a class="header-anchor" href="#算数函数"><span>算数函数</span></a></h3>`,2)),a("p",null,[s[13]||(s[13]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E6%95%B0%E5%AD%A6%E5%87%BD%E6%95%B0"},{default:t(()=>s[12]||(s[12]=[n("Arithmetic Operators and Functions")])),_:1})]),s[65]||(s[65]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> sin<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> cos<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> tan<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">limit</span> <span class="token number">5</span> <span class="token keyword">offset</span> <span class="token number">1000</span><span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> s4<span class="token punctuation">,</span><span class="token function">round</span><span class="token punctuation">(</span>s4<span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token function">round</span><span class="token punctuation">(</span>s4<span class="token punctuation">,</span><span class="token number">2</span><span class="token punctuation">)</span><span class="token punctuation">,</span><span class="token function">round</span><span class="token punctuation">(</span>s4<span class="token punctuation">,</span><span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="比较函数" tabindex="-1"><a class="header-anchor" href="#比较函数"><span>比较函数</span></a></h3>`,2)),a("p",null,[s[15]||(s[15]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E6%AF%94%E8%BE%83%E8%BF%90%E7%AE%97%E7%AC%A6%E5%92%8C%E5%87%BD%E6%95%B0"},{default:t(()=>s[14]||(s[14]=[n("Comparison Operators and Functions")])),_:1})]),s[66]||(s[66]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> ts<span class="token punctuation">,</span> on_off<span class="token punctuation">(</span>ts<span class="token punctuation">,</span> <span class="token string">&#39;threshold&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> ts<span class="token punctuation">,</span> in_range<span class="token punctuation">(</span>ts<span class="token punctuation">,</span> <span class="token string">&#39;lower&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;upper&#39;</span><span class="token operator">=</span><span class="token string">&#39;3.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="字符串处理函数" tabindex="-1"><a class="header-anchor" href="#字符串处理函数"><span>字符串处理函数</span></a></h3>`,2)),a("p",null,[s[17]||(s[17]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%A4%84%E7%90%86"},{default:t(()=>s[16]||(s[16]=[n("String Processing")])),_:1})]),s[67]||(s[67]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> string_contains<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;s&#39;</span><span class="token operator">=</span><span class="token string">&#39;warn&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d4<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> string_matches<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;regex&#39;</span><span class="token operator">=</span><span class="token string">&#39;[^\\\\s]+37229&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d4<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> length<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> locate<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;target&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> locate<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;target&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;reverse&quot;</span><span class="token operator">=</span><span class="token string">&quot;true&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> startswith<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;target&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> endswith<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;target&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> concat<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> <span class="token string">&quot;target1&quot;</span><span class="token operator">=</span><span class="token string">&quot;IoT&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;target2&quot;</span><span class="token operator">=</span><span class="token string">&quot;DB&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> concat<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> <span class="token string">&quot;target1&quot;</span><span class="token operator">=</span><span class="token string">&quot;IoT&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;target2&quot;</span><span class="token operator">=</span><span class="token string">&quot;DB&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;series_behind&quot;</span><span class="token operator">=</span><span class="token string">&quot;true&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> substring<span class="token punctuation">(</span>s1 <span class="token keyword">from</span> <span class="token number">1</span> <span class="token keyword">for</span> <span class="token number">2</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> <span class="token keyword">replace</span><span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;es&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;tt&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> upper<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> lower<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s3<span class="token punctuation">,</span> trim<span class="token punctuation">(</span>s3<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> strcmp<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> strreplace<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;target&quot;</span><span class="token operator">=</span><span class="token string">&quot;,&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;replace&quot;</span><span class="token operator">=</span><span class="token string">&quot;/&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;limit&quot;</span><span class="token operator">=</span><span class="token string">&quot;2&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> strreplace<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;target&quot;</span><span class="token operator">=</span><span class="token string">&quot;,&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;replace&quot;</span><span class="token operator">=</span><span class="token string">&quot;/&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;limit&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;offset&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;reverse&quot;</span><span class="token operator">=</span><span class="token string">&quot;true&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> regexmatch<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;regex&quot;</span><span class="token operator">=</span><span class="token string">&quot;\\d+\\.\\d+\\.\\d+\\.\\d+&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;group&quot;</span><span class="token operator">=</span><span class="token string">&quot;0&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> regexreplace<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;regex&quot;</span><span class="token operator">=</span><span class="token string">&quot;192\\.168\\.0\\.(\\d+)&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;replace&quot;</span><span class="token operator">=</span><span class="token string">&quot;cluster-$1&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;limit&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> regexsplit<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;regex&quot;</span><span class="token operator">=</span><span class="token string">&quot;,&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;index&quot;</span><span class="token operator">=</span><span class="token string">&quot;-1&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> regexsplit<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;regex&quot;</span><span class="token operator">=</span><span class="token string">&quot;,&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;index&quot;</span><span class="token operator">=</span><span class="token string">&quot;3&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="数据类型转换函数" tabindex="-1"><a class="header-anchor" href="#数据类型转换函数"><span>数据类型转换函数</span></a></h3>`,2)),a("p",null,[s[19]||(s[19]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E8%BD%AC%E6%8D%A2"},{default:t(()=>s[18]||(s[18]=[n("Data Type Conversion Function")])),_:1})]),s[68]||(s[68]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> cast<span class="token punctuation">(</span>s1 <span class="token keyword">as</span> INT32<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="常序列生成函数" tabindex="-1"><a class="header-anchor" href="#常序列生成函数"><span>常序列生成函数</span></a></h3>`,2)),a("p",null,[s[21]||(s[21]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E5%B8%B8%E5%BA%8F%E5%88%97%E7%94%9F%E6%88%90%E5%87%BD%E6%95%B0"},{default:t(()=>s[20]||(s[20]=[n("Constant Timeseries Generating Functions")])),_:1})]),s[69]||(s[69]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> const<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;value&#39;</span><span class="token operator">=</span><span class="token string">&#39;1024&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;INT64&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span> pi<span class="token punctuation">(</span>s2<span class="token punctuation">)</span><span class="token punctuation">,</span> e<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1<span class="token punctuation">;</span> </span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="选择函数" tabindex="-1"><a class="header-anchor" href="#选择函数"><span>选择函数</span></a></h3>`,2)),a("p",null,[s[23]||(s[23]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E9%80%89%E6%8B%A9%E5%87%BD%E6%95%B0"},{default:t(()=>s[22]||(s[22]=[n("Selector Functions")])),_:1})]),s[70]||(s[70]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> top_k<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;k&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span> bottom_k<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;k&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d2 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&gt;</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">12</span><span class="token operator">-</span><span class="token number">10</span>T20:<span class="token number">36</span>:<span class="token number">15.530</span><span class="token operator">+</span><span class="token number">08</span>:<span class="token number">00</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="区间查询函数" tabindex="-1"><a class="header-anchor" href="#区间查询函数"><span>区间查询函数</span></a></h3>`,2)),a("p",null,[s[25]||(s[25]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E5%8C%BA%E9%97%B4%E6%9F%A5%E8%AF%A2%E5%87%BD%E6%95%B0"},{default:t(()=>s[24]||(s[24]=[n("Continuous Interval Functions")])),_:1})]),s[71]||(s[71]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> zero_count<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> non_zero_count<span class="token punctuation">(</span>s2<span class="token punctuation">)</span><span class="token punctuation">,</span> zero_duration<span class="token punctuation">(</span>s3<span class="token punctuation">)</span><span class="token punctuation">,</span> non_zero_duration<span class="token punctuation">(</span>s4<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d2<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="趋势计算函数" tabindex="-1"><a class="header-anchor" href="#趋势计算函数"><span>趋势计算函数</span></a></h3>`,2)),a("p",null,[s[27]||(s[27]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E8%B6%8B%E5%8A%BF%E8%AE%A1%E7%AE%97%E5%87%BD%E6%95%B0"},{default:t(()=>s[26]||(s[26]=[n("Variation Trend Calculation Functions")])),_:1})]),s[72]||(s[72]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> s1<span class="token punctuation">,</span> time_difference<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> difference<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> non_negative_difference<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> derivative<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> non_negative_derivative<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg1<span class="token punctuation">.</span>d1 <span class="token keyword">limit</span> <span class="token number">5</span> <span class="token keyword">offset</span> <span class="token number">1000</span><span class="token punctuation">;</span> </span>
<span class="line"></span>
<span class="line"><span class="token keyword">SELECT</span> DIFF<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> DIFF<span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">SELECT</span> DIFF<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;ignoreNull&#39;</span><span class="token operator">=</span><span class="token string">&#39;false&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span> DIFF<span class="token punctuation">(</span>s2<span class="token punctuation">,</span> <span class="token string">&#39;ignoreNull&#39;</span><span class="token operator">=</span><span class="token string">&#39;false&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="采样函数" tabindex="-1"><a class="header-anchor" href="#采样函数"><span>采样函数</span></a></h3>`,2)),a("p",null,[s[29]||(s[29]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E9%87%87%E6%A0%B7%E5%87%BD%E6%95%B0"},{default:t(()=>s[28]||(s[28]=[n("Sample Functions")])),_:1}),s[30]||(s[30]=n("。"))]),s[73]||(s[73]=a("h3",{id:"时间序列处理函数",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#时间序列处理函数"},[a("span",null,"时间序列处理函数")])],-1)),a("p",null,[s[32]||(s[32]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E6%97%B6%E9%97%B4%E5%BA%8F%E5%88%97%E5%A4%84%E7%90%86%E5%87%BD%E6%95%B0"},{default:t(()=>s[31]||(s[31]=[n("Sample Functions")])),_:1}),s[33]||(s[33]=n("。"))]),s[74]||(s[74]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> equal_size_bucket_random_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span><span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> random_sample <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> equal_size_bucket_agg_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;avg&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> agg_avg<span class="token punctuation">,</span> equal_size_bucket_agg_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;max&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> agg_max<span class="token punctuation">,</span> equal_size_bucket_agg_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span><span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;min&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> agg_min<span class="token punctuation">,</span> equal_size_bucket_agg_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;sum&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> agg_sum<span class="token punctuation">,</span> equal_size_bucket_agg_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;extreme&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> agg_extreme<span class="token punctuation">,</span> equal_size_bucket_agg_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;variance&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> agg_variance <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> equal_size_bucket_m4_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> M4_sample <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span></span>
<span class="line"><span class="token keyword">select</span> equal_size_bucket_outlier_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;avg&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;number&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> outlier_avg_sample<span class="token punctuation">,</span> equal_size_bucket_outlier_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;stendis&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;number&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> outlier_stendis_sample<span class="token punctuation">,</span> equal_size_bucket_outlier_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;cos&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;number&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> outlier_cos_sample<span class="token punctuation">,</span> equal_size_bucket_outlier_sample<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;proportion&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.1&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;type&#39;</span><span class="token operator">=</span><span class="token string">&#39;prenextdis&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;number&#39;</span><span class="token operator">=</span><span class="token string">&#39;2&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> outlier_prenextdis_sample <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> M4<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;timeInterval&#39;</span><span class="token operator">=</span><span class="token string">&#39;25&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;displayWindowBegin&#39;</span><span class="token operator">=</span><span class="token string">&#39;0&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;displayWindowEnd&#39;</span><span class="token operator">=</span><span class="token string">&#39;100&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>vehicle<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> M4<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;windowSize&#39;</span><span class="token operator">=</span><span class="token string">&#39;10&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>vehicle<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="时间序列处理函数-1" tabindex="-1"><a class="header-anchor" href="#时间序列处理函数-1"><span>时间序列处理函数</span></a></h3>`,2)),a("p",null,[s[35]||(s[35]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E6%97%B6%E9%97%B4%E5%BA%8F%E5%88%97%E5%A4%84%E7%90%86"},{default:t(()=>s[34]||(s[34]=[n("Time-Series")])),_:1})]),s[75]||(s[75]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> change_points<span class="token punctuation">(</span>s1<span class="token punctuation">)</span><span class="token punctuation">,</span> change_points<span class="token punctuation">(</span>s2<span class="token punctuation">)</span><span class="token punctuation">,</span> change_points<span class="token punctuation">(</span>s3<span class="token punctuation">)</span><span class="token punctuation">,</span> change_points<span class="token punctuation">(</span>s4<span class="token punctuation">)</span><span class="token punctuation">,</span> change_points<span class="token punctuation">(</span>s5<span class="token punctuation">)</span><span class="token punctuation">,</span> change_points<span class="token punctuation">(</span>s6<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>testChangePoints<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="数据质量函数库" tabindex="-1"><a class="header-anchor" href="#数据质量函数库"><span>数据质量函数库</span></a></h2>`,2)),a("p",null,[s[37]||(s[37]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html"},{default:t(()=>s[36]||(s[36]=[n("Operator-and-Expression")])),_:1})]),s[76]||(s[76]=a("h3",{id:"数据质量",tabindex:"-1"},[a("a",{class:"header-anchor",href:"#数据质量"},[a("span",null,"数据质量")])],-1)),a("p",null,[s[39]||(s[39]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E6%95%B0%E6%8D%AE%E8%B4%A8%E9%87%8F"},{default:t(()=>s[38]||(s[38]=[n("Data-Quality")])),_:1})]),s[77]||(s[77]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># Completeness</span></span>
<span class="line"><span class="token keyword">select</span> completeness<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">30</span></span>
<span class="line"><span class="token keyword">select</span> completeness<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;window&quot;</span><span class="token operator">=</span><span class="token string">&quot;15&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">01</span>:<span class="token number">00</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Consistency</span></span>
<span class="line"><span class="token keyword">select</span> consistency<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">30</span></span>
<span class="line"><span class="token keyword">select</span> consistency<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;window&quot;</span><span class="token operator">=</span><span class="token string">&quot;15&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">01</span>:<span class="token number">00</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Timeliness</span></span>
<span class="line"><span class="token keyword">select</span> timeliness<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">30</span></span>
<span class="line"><span class="token keyword">select</span> timeliness<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;window&quot;</span><span class="token operator">=</span><span class="token string">&quot;15&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">01</span>:<span class="token number">00</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Validity</span></span>
<span class="line"><span class="token keyword">select</span> Validity<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">30</span></span>
<span class="line"><span class="token keyword">select</span> Validity<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;window&quot;</span><span class="token operator">=</span><span class="token string">&quot;15&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">01</span>:<span class="token number">00</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Accuracy</span></span>
<span class="line"><span class="token keyword">select</span> Accuracy<span class="token punctuation">(</span>t1<span class="token punctuation">,</span>t2<span class="token punctuation">,</span>t3<span class="token punctuation">,</span>m1<span class="token punctuation">,</span>m2<span class="token punctuation">,</span>m3<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="数据画像" tabindex="-1"><a class="header-anchor" href="#数据画像"><span>数据画像</span></a></h3>`,2)),a("p",null,[s[41]||(s[41]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E6%95%B0%E6%8D%AE%E7%94%BB%E5%83%8F"},{default:t(()=>s[40]||(s[40]=[n("Data-Profiling")])),_:1})]),s[78]||(s[78]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># ACF</span></span>
<span class="line"><span class="token keyword">select</span> acf<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">05</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Distinct</span></span>
<span class="line"><span class="token keyword">select</span> <span class="token keyword">distinct</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Histogram</span></span>
<span class="line"><span class="token keyword">select</span> histogram<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;min&quot;</span><span class="token operator">=</span><span class="token string">&quot;1&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;max&quot;</span><span class="token operator">=</span><span class="token string">&quot;20&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;count&quot;</span><span class="token operator">=</span><span class="token string">&quot;10&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Integral</span></span>
<span class="line"><span class="token keyword">select</span> integral<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">10</span></span>
<span class="line"><span class="token keyword">select</span> integral<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;unit&quot;</span><span class="token operator">=</span><span class="token string">&quot;1m&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">10</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># IntegralAvg</span></span>
<span class="line"><span class="token keyword">select</span> integralavg<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">10</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Mad</span></span>
<span class="line"><span class="token keyword">select</span> mad<span class="token punctuation">(</span>s0<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"><span class="token keyword">select</span> mad<span class="token punctuation">(</span>s0<span class="token punctuation">,</span> <span class="token string">&quot;error&quot;</span><span class="token operator">=</span><span class="token string">&quot;0.01&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Median</span></span>
<span class="line"><span class="token keyword">select</span> median<span class="token punctuation">(</span>s0<span class="token punctuation">,</span> <span class="token string">&quot;error&quot;</span><span class="token operator">=</span><span class="token string">&quot;0.01&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># MinMax</span></span>
<span class="line"><span class="token keyword">select</span> minmax<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Mode</span></span>
<span class="line"><span class="token keyword">select</span> <span class="token keyword">mode</span><span class="token punctuation">(</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># MvAvg</span></span>
<span class="line"><span class="token keyword">select</span> mvavg<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;window&quot;</span><span class="token operator">=</span><span class="token string">&quot;3&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># PACF</span></span>
<span class="line"><span class="token keyword">select</span> pacf<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;lag&quot;</span><span class="token operator">=</span><span class="token string">&quot;5&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Percentile</span></span>
<span class="line"><span class="token keyword">select</span> percentile<span class="token punctuation">(</span>s0<span class="token punctuation">,</span> <span class="token string">&quot;rank&quot;</span><span class="token operator">=</span><span class="token string">&quot;0.2&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;error&quot;</span><span class="token operator">=</span><span class="token string">&quot;0.01&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Quantile</span></span>
<span class="line"><span class="token keyword">select</span> quantile<span class="token punctuation">(</span>s0<span class="token punctuation">,</span> <span class="token string">&quot;rank&quot;</span><span class="token operator">=</span><span class="token string">&quot;0.2&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;K&quot;</span><span class="token operator">=</span><span class="token string">&quot;800&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Period</span></span>
<span class="line"><span class="token keyword">select</span> period<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d3</span>
<span class="line"></span>
<span class="line"><span class="token comment"># QLB</span></span>
<span class="line"><span class="token keyword">select</span> QLB<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Resample</span></span>
<span class="line"><span class="token keyword">select</span> resample<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;every&#39;</span><span class="token operator">=</span><span class="token string">&#39;5m&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;interp&#39;</span><span class="token operator">=</span><span class="token string">&#39;linear&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> resample<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;every&#39;</span><span class="token operator">=</span><span class="token string">&#39;30m&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;aggr&#39;</span><span class="token operator">=</span><span class="token string">&#39;first&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> resample<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;every&#39;</span><span class="token operator">=</span><span class="token string">&#39;30m&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;start&#39;</span><span class="token operator">=</span><span class="token string">&#39;2021-03-06 15:00:00&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Sample</span></span>
<span class="line"><span class="token keyword">select</span> sample<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;method&#39;</span><span class="token operator">=</span><span class="token string">&#39;reservoir&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;k&#39;</span><span class="token operator">=</span><span class="token string">&#39;5&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> sample<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;method&#39;</span><span class="token operator">=</span><span class="token string">&#39;isometric&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;k&#39;</span><span class="token operator">=</span><span class="token string">&#39;5&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Segment</span></span>
<span class="line"><span class="token keyword">select</span> segment<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;error&quot;</span><span class="token operator">=</span><span class="token string">&quot;0.1&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Skew</span></span>
<span class="line"><span class="token keyword">select</span> skew<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Spline</span></span>
<span class="line"><span class="token keyword">select</span> spline<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;points&quot;</span><span class="token operator">=</span><span class="token string">&quot;151&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Spread</span></span>
<span class="line"><span class="token keyword">select</span> spread<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">30</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># Stddev</span></span>
<span class="line"><span class="token keyword">select</span> stddev<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># ZScore</span></span>
<span class="line"><span class="token keyword">select</span> zscore<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="异常检测" tabindex="-1"><a class="header-anchor" href="#异常检测"><span>异常检测</span></a></h3>`,2)),a("p",null,[s[43]||(s[43]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E5%BC%82%E5%B8%B8%E6%A3%80%E6%B5%8B"},{default:t(()=>s[42]||(s[42]=[n("Anomaly-Detection")])),_:1})]),s[79]||(s[79]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># IQR</span></span>
<span class="line"><span class="token keyword">select</span> iqr<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># KSigma</span></span>
<span class="line"><span class="token keyword">select</span> ksigma<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;k&quot;</span><span class="token operator">=</span><span class="token string">&quot;1.0&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">30</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># LOF</span></span>
<span class="line"><span class="token keyword">select</span> lof<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span><span class="token operator">&lt;</span><span class="token number">1000</span></span>
<span class="line"><span class="token keyword">select</span> lof<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&quot;method&quot;</span><span class="token operator">=</span><span class="token string">&quot;series&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span><span class="token operator">&lt;</span><span class="token number">1000</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># MissDetect</span></span>
<span class="line"><span class="token keyword">select</span> missdetect<span class="token punctuation">(</span>s2<span class="token punctuation">,</span><span class="token string">&#39;minlen&#39;</span><span class="token operator">=</span><span class="token string">&#39;10&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Range</span></span>
<span class="line"><span class="token keyword">select</span> range<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;lower_bound&quot;</span><span class="token operator">=</span><span class="token string">&quot;101.0&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;upper_bound&quot;</span><span class="token operator">=</span><span class="token string">&quot;125.0&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">30</span></span>
<span class="line"></span>
<span class="line"><span class="token comment"># TwoSidedFilter</span></span>
<span class="line"><span class="token keyword">select</span> TwoSidedFilter<span class="token punctuation">(</span>s0<span class="token punctuation">,</span> <span class="token string">&#39;len&#39;</span><span class="token operator">=</span><span class="token string">&#39;5&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;threshold&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.3&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Outlier</span></span>
<span class="line"><span class="token keyword">select</span> outlier<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;r&quot;</span><span class="token operator">=</span><span class="token string">&quot;5.0&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;k&quot;</span><span class="token operator">=</span><span class="token string">&quot;4&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;w&quot;</span><span class="token operator">=</span><span class="token string">&quot;10&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;s&quot;</span><span class="token operator">=</span><span class="token string">&quot;5&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># MasterTrain</span></span>
<span class="line"><span class="token keyword">select</span> MasterTrain<span class="token punctuation">(</span>lo<span class="token punctuation">,</span>la<span class="token punctuation">,</span>m_lo<span class="token punctuation">,</span>m_la<span class="token punctuation">,</span><span class="token string">&#39;p&#39;</span><span class="token operator">=</span><span class="token string">&#39;3&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;eta&#39;</span><span class="token operator">=</span><span class="token string">&#39;1.0&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># MasterDetect</span></span>
<span class="line"><span class="token keyword">select</span> MasterDetect<span class="token punctuation">(</span>lo<span class="token punctuation">,</span>la<span class="token punctuation">,</span>m_lo<span class="token punctuation">,</span>m_la<span class="token punctuation">,</span>model<span class="token punctuation">,</span><span class="token string">&#39;output_type&#39;</span><span class="token operator">=</span><span class="token string">&#39;repair&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;p&#39;</span><span class="token operator">=</span><span class="token string">&#39;3&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;k&#39;</span><span class="token operator">=</span><span class="token string">&#39;3&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;eta&#39;</span><span class="token operator">=</span><span class="token string">&#39;1.0&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"><span class="token keyword">select</span> MasterDetect<span class="token punctuation">(</span>lo<span class="token punctuation">,</span>la<span class="token punctuation">,</span>m_lo<span class="token punctuation">,</span>m_la<span class="token punctuation">,</span>model<span class="token punctuation">,</span><span class="token string">&#39;output_type&#39;</span><span class="token operator">=</span><span class="token string">&#39;anomaly&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;p&#39;</span><span class="token operator">=</span><span class="token string">&#39;3&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;k&#39;</span><span class="token operator">=</span><span class="token string">&#39;3&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;eta&#39;</span><span class="token operator">=</span><span class="token string">&#39;1.0&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="频域分析" tabindex="-1"><a class="header-anchor" href="#频域分析"><span>频域分析</span></a></h3>`,2)),a("p",null,[s[45]||(s[45]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E9%A2%91%E5%9F%9F%E5%88%86%E6%9E%90"},{default:t(()=>s[44]||(s[44]=[n("Frequency-Domain")])),_:1})]),s[80]||(s[80]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># Conv</span></span>
<span class="line"><span class="token keyword">select</span> conv<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Deconv</span></span>
<span class="line"><span class="token keyword">select</span> deconv<span class="token punctuation">(</span>s3<span class="token punctuation">,</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"><span class="token keyword">select</span> deconv<span class="token punctuation">(</span>s3<span class="token punctuation">,</span>s2<span class="token punctuation">,</span><span class="token string">&#39;result&#39;</span><span class="token operator">=</span><span class="token string">&#39;remainder&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># DWT</span></span>
<span class="line"><span class="token keyword">select</span> dwt<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;method&quot;</span><span class="token operator">=</span><span class="token string">&quot;haar&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># FFT</span></span>
<span class="line"><span class="token keyword">select</span> fft<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> fft<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;result&#39;</span><span class="token operator">=</span><span class="token string">&#39;real&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;compress&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.99&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span> fft<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;result&#39;</span><span class="token operator">=</span><span class="token string">&#39;imag&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;compress&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.99&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># HighPass</span></span>
<span class="line"><span class="token keyword">select</span> highpass<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;wpass&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.45&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># IFFT</span></span>
<span class="line"><span class="token keyword">select</span> ifft<span class="token punctuation">(</span>re<span class="token punctuation">,</span> im<span class="token punctuation">,</span> <span class="token string">&#39;interval&#39;</span><span class="token operator">=</span><span class="token string">&#39;1m&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;start&#39;</span><span class="token operator">=</span><span class="token string">&#39;2021-01-01 00:00:00&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># LowPass</span></span>
<span class="line"><span class="token keyword">select</span> lowpass<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;wpass&#39;</span><span class="token operator">=</span><span class="token string">&#39;0.45&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="数据匹配" tabindex="-1"><a class="header-anchor" href="#数据匹配"><span>数据匹配</span></a></h3>`,2)),a("p",null,[s[47]||(s[47]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E6%95%B0%E6%8D%AE%E5%8C%B9%E9%85%8D"},{default:t(()=>s[46]||(s[46]=[n("Data-Matching")])),_:1})]),s[81]||(s[81]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># Cov</span></span>
<span class="line"><span class="token keyword">select</span> cov<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># DTW</span></span>
<span class="line"><span class="token keyword">select</span> dtw<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Pearson</span></span>
<span class="line"><span class="token keyword">select</span> pearson<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># PtnSym</span></span>
<span class="line"><span class="token keyword">select</span> ptnsym<span class="token punctuation">(</span>s4<span class="token punctuation">,</span> <span class="token string">&#39;window&#39;</span><span class="token operator">=</span><span class="token string">&#39;5&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;threshold&#39;</span><span class="token operator">=</span><span class="token string">&#39;0&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># XCorr</span></span>
<span class="line"><span class="token keyword">select</span> xcorr<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1 <span class="token keyword">where</span> <span class="token keyword">time</span> <span class="token operator">&lt;=</span> <span class="token number">2020</span><span class="token operator">-</span><span class="token number">01</span><span class="token operator">-</span><span class="token number">01</span> <span class="token number">00</span>:<span class="token number">00</span>:<span class="token number">05</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="数据修复" tabindex="-1"><a class="header-anchor" href="#数据修复"><span>数据修复</span></a></h3>`,2)),a("p",null,[s[49]||(s[49]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E6%95%B0%E6%8D%AE%E4%BF%AE%E5%A4%8D"},{default:t(()=>s[48]||(s[48]=[n("Data-Repairing")])),_:1})]),s[82]||(s[82]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># TimestampRepair</span></span>
<span class="line"><span class="token keyword">select</span> timestamprepair<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;interval&#39;</span><span class="token operator">=</span><span class="token string">&#39;10000&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"><span class="token keyword">select</span> timestamprepair<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># ValueFill</span></span>
<span class="line"><span class="token keyword">select</span> valuefill<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"><span class="token keyword">select</span> valuefill<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&quot;method&quot;</span><span class="token operator">=</span><span class="token string">&quot;previous&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># ValueRepair</span></span>
<span class="line"><span class="token keyword">select</span> valuerepair<span class="token punctuation">(</span>s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"><span class="token keyword">select</span> valuerepair<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;method&#39;</span><span class="token operator">=</span><span class="token string">&#39;LsGreedy&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span>
<span class="line"><span class="token comment"># MasterRepair</span></span>
<span class="line"><span class="token keyword">select</span> MasterRepair<span class="token punctuation">(</span>t1<span class="token punctuation">,</span>t2<span class="token punctuation">,</span>t3<span class="token punctuation">,</span>m1<span class="token punctuation">,</span>m2<span class="token punctuation">,</span>m3<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test</span>
<span class="line"></span>
<span class="line"><span class="token comment"># SeasonalRepair</span></span>
<span class="line"><span class="token keyword">select</span> seasonalrepair<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;period&#39;</span><span class="token operator">=</span><span class="token number">3</span><span class="token punctuation">,</span><span class="token string">&#39;k&#39;</span><span class="token operator">=</span><span class="token number">2</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"><span class="token keyword">select</span> seasonalrepair<span class="token punctuation">(</span>s1<span class="token punctuation">,</span><span class="token string">&#39;method&#39;</span><span class="token operator">=</span><span class="token string">&#39;improved&#39;</span><span class="token punctuation">,</span><span class="token string">&#39;period&#39;</span><span class="token operator">=</span><span class="token number">3</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d2</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="序列发现" tabindex="-1"><a class="header-anchor" href="#序列发现"><span>序列发现</span></a></h3>`,2)),a("p",null,[s[51]||(s[51]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E5%BA%8F%E5%88%97%E5%8F%91%E7%8E%B0"},{default:t(()=>s[50]||(s[50]=[n("Series-Discovery")])),_:1})]),s[83]||(s[83]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># ConsecutiveSequences</span></span>
<span class="line"><span class="token keyword">select</span> consecutivesequences<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">,</span><span class="token string">&#39;gap&#39;</span><span class="token operator">=</span><span class="token string">&#39;5m&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"><span class="token keyword">select</span> consecutivesequences<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span>
<span class="line"><span class="token comment"># ConsecutiveWindows</span></span>
<span class="line"><span class="token keyword">select</span> consecutivewindows<span class="token punctuation">(</span>s1<span class="token punctuation">,</span>s2<span class="token punctuation">,</span><span class="token string">&#39;length&#39;</span><span class="token operator">=</span><span class="token string">&#39;10m&#39;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="机器学习" tabindex="-1"><a class="header-anchor" href="#机器学习"><span>机器学习</span></a></h3>`,2)),a("p",null,[s[53]||(s[53]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/UDF-Libraries.html#%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0"},{default:t(()=>s[52]||(s[52]=[n("Machine-Learning")])),_:1})]),s[84]||(s[84]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment"># AR</span></span>
<span class="line"><span class="token keyword">select</span> ar<span class="token punctuation">(</span>s0<span class="token punctuation">,</span><span class="token string">&quot;p&quot;</span><span class="token operator">=</span><span class="token string">&quot;2&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d0</span>
<span class="line"></span>
<span class="line"><span class="token comment"># Representation</span></span>
<span class="line"><span class="token keyword">select</span> representation<span class="token punctuation">(</span>s0<span class="token punctuation">,</span><span class="token string">&quot;tb&quot;</span><span class="token operator">=</span><span class="token string">&quot;3&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;vb&quot;</span><span class="token operator">=</span><span class="token string">&quot;2&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d0</span>
<span class="line"></span>
<span class="line"><span class="token comment"># RM</span></span>
<span class="line"><span class="token keyword">select</span> rm<span class="token punctuation">(</span>s0<span class="token punctuation">,</span> s1<span class="token punctuation">,</span><span class="token string">&quot;tb&quot;</span><span class="token operator">=</span><span class="token string">&quot;3&quot;</span><span class="token punctuation">,</span><span class="token string">&quot;vb&quot;</span><span class="token operator">=</span><span class="token string">&quot;2&quot;</span><span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test<span class="token punctuation">.</span>d0</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="lambda-表达式" tabindex="-1"><a class="header-anchor" href="#lambda-表达式"><span>Lambda 表达式</span></a></h2>`,2)),a("p",null,[s[55]||(s[55]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#Lambda%E8%A1%A8%E8%BE%BE%E5%BC%8F"},{default:t(()=>s[54]||(s[54]=[n("Lambda")])),_:1})]),s[85]||(s[85]=o('<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> jexl<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;expr&#39;</span><span class="token operator">=</span><span class="token string">&#39;x -&gt; {x + x}&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> jexl1<span class="token punctuation">,</span> jexl<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;expr&#39;</span><span class="token operator">=</span><span class="token string">&#39;x -&gt; {x * 3}&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> jexl2<span class="token punctuation">,</span> jexl<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;expr&#39;</span><span class="token operator">=</span><span class="token string">&#39;x -&gt; {x * x}&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> jexl3<span class="token punctuation">,</span> jexl<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> <span class="token string">&#39;expr&#39;</span><span class="token operator">=</span><span class="token string">&#39;x -&gt; {multiply(x, 100)}&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> jexl4<span class="token punctuation">,</span> jexl<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> st<span class="token punctuation">,</span> <span class="token string">&#39;expr&#39;</span><span class="token operator">=</span><span class="token string">&#39;(x, y) -&gt; {x + y}&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> jexl5<span class="token punctuation">,</span> jexl<span class="token punctuation">(</span>temperature<span class="token punctuation">,</span> st<span class="token punctuation">,</span> str<span class="token punctuation">,</span> <span class="token string">&#39;expr&#39;</span><span class="token operator">=</span><span class="token string">&#39;(x, y, z) -&gt; {x + y + z}&#39;</span><span class="token punctuation">)</span> <span class="token keyword">as</span> jexl6 <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">;</span><span class="token identifier"><span class="token punctuation">`</span><span class="token punctuation">`</span></span><span class="token punctuation">`</span></span>\n<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="条件表达式" tabindex="-1"><a class="header-anchor" href="#条件表达式"><span>条件表达式</span></a></h2>',2)),a("p",null,[s[57]||(s[57]=n("更多见文档")),p(e,{to:"/zh/UserGuide/latest/Reference/Function-and-Expression.html#%E6%9D%A1%E4%BB%B6%E8%A1%A8%E8%BE%BE%E5%BC%8F"},{default:t(()=>s[56]||(s[56]=[n("Conditional Expressions")])),_:1})]),s[86]||(s[86]=o(`<div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">select</span> T<span class="token punctuation">,</span> P<span class="token punctuation">,</span> <span class="token keyword">case</span></span>
<span class="line"><span class="token keyword">when</span> <span class="token number">1000</span><span class="token operator">&lt;</span>T <span class="token operator">and</span> T<span class="token operator">&lt;</span><span class="token number">1050</span> <span class="token operator">and</span> <span class="token number">1000000</span><span class="token operator">&lt;</span>P <span class="token operator">and</span> P<span class="token operator">&lt;</span><span class="token number">1100000</span> <span class="token keyword">then</span> <span class="token string">&quot;good!&quot;</span></span>
<span class="line"><span class="token keyword">when</span> T<span class="token operator">&lt;=</span><span class="token number">1000</span> <span class="token operator">or</span> T<span class="token operator">&gt;=</span><span class="token number">1050</span> <span class="token keyword">then</span> <span class="token string">&quot;bad temperature&quot;</span></span>
<span class="line"><span class="token keyword">when</span> P<span class="token operator">&lt;=</span><span class="token number">1000000</span> <span class="token operator">or</span> P<span class="token operator">&gt;=</span><span class="token number">1100000</span> <span class="token keyword">then</span> <span class="token string">&quot;bad pressure&quot;</span></span>
<span class="line"><span class="token keyword">end</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>result<span class="token punctuation">\`</span></span></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>test1</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> str<span class="token punctuation">,</span> <span class="token keyword">case</span></span>
<span class="line"><span class="token keyword">when</span> str <span class="token operator">like</span> <span class="token string">&quot;%cc%&quot;</span> <span class="token keyword">then</span> <span class="token string">&quot;has cc&quot;</span></span>
<span class="line"><span class="token keyword">when</span> str <span class="token operator">like</span> <span class="token string">&quot;%dd%&quot;</span> <span class="token keyword">then</span> <span class="token string">&quot;has dd&quot;</span></span>
<span class="line"><span class="token keyword">else</span> <span class="token string">&quot;no cc and dd&quot;</span> <span class="token keyword">end</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>result<span class="token punctuation">\`</span></span></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>test2</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span></span>
<span class="line"><span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">case</span> <span class="token keyword">when</span> x<span class="token operator">&lt;=</span><span class="token number">1</span> <span class="token keyword">then</span> <span class="token number">1</span> <span class="token keyword">end</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>(-∞,1]<span class="token punctuation">\`</span></span><span class="token punctuation">,</span></span>
<span class="line"><span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">case</span> <span class="token keyword">when</span> <span class="token number">1</span><span class="token operator">&lt;</span>x <span class="token operator">and</span> x<span class="token operator">&lt;=</span><span class="token number">3</span> <span class="token keyword">then</span> <span class="token number">1</span> <span class="token keyword">end</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>(1,3]<span class="token punctuation">\`</span></span><span class="token punctuation">,</span></span>
<span class="line"><span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">case</span> <span class="token keyword">when</span> <span class="token number">3</span><span class="token operator">&lt;</span>x <span class="token operator">and</span> x<span class="token operator">&lt;=</span><span class="token number">7</span> <span class="token keyword">then</span> <span class="token number">1</span> <span class="token keyword">end</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>(3,7]<span class="token punctuation">\`</span></span><span class="token punctuation">,</span></span>
<span class="line"><span class="token function">count</span><span class="token punctuation">(</span><span class="token keyword">case</span> <span class="token keyword">when</span> <span class="token number">7</span><span class="token operator">&lt;</span>x <span class="token keyword">then</span> <span class="token number">1</span> <span class="token keyword">end</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>(7,+∞)<span class="token punctuation">\`</span></span></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>test3</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> x<span class="token punctuation">,</span> <span class="token keyword">case</span> x <span class="token keyword">when</span> <span class="token number">1</span> <span class="token keyword">then</span> <span class="token string">&quot;one&quot;</span> <span class="token keyword">when</span> <span class="token number">2</span> <span class="token keyword">then</span> <span class="token string">&quot;two&quot;</span> <span class="token keyword">else</span> <span class="token string">&quot;other&quot;</span> <span class="token keyword">end</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test4</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> x<span class="token punctuation">,</span> <span class="token keyword">case</span> x <span class="token keyword">when</span> <span class="token number">1</span> <span class="token keyword">then</span> <span class="token boolean">true</span> <span class="token keyword">when</span> <span class="token number">2</span> <span class="token keyword">then</span> <span class="token boolean">false</span> <span class="token keyword">end</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>result<span class="token punctuation">\`</span></span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>test4</span>
<span class="line"></span>
<span class="line"><span class="token keyword">select</span> x<span class="token punctuation">,</span> <span class="token keyword">case</span> x</span>
<span class="line"><span class="token keyword">when</span> <span class="token number">1</span> <span class="token keyword">then</span> <span class="token number">1</span></span>
<span class="line"><span class="token keyword">when</span> <span class="token number">2</span> <span class="token keyword">then</span> <span class="token number">222222222222222</span></span>
<span class="line"><span class="token keyword">when</span> <span class="token number">3</span> <span class="token keyword">then</span> <span class="token number">3.3</span></span>
<span class="line"><span class="token keyword">when</span> <span class="token number">4</span> <span class="token keyword">then</span> <span class="token number">4.4444444444444</span></span>
<span class="line"><span class="token keyword">end</span> <span class="token keyword">as</span> <span class="token identifier"><span class="token punctuation">\`</span>result<span class="token punctuation">\`</span></span></span>
<span class="line"><span class="token keyword">from</span> root<span class="token punctuation">.</span>test4</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="触发器" tabindex="-1"><a class="header-anchor" href="#触发器"><span>触发器</span></a></h2><h3 id="使用-sql-语句注册该触发器" tabindex="-1"><a class="header-anchor" href="#使用-sql-语句注册该触发器"><span>使用 SQL 语句注册该触发器</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment">// Create Trigger</span></span>
<span class="line"></span>
<span class="line">createTrigger</span>
<span class="line"></span>
<span class="line">​ : <span class="token keyword">CREATE</span> triggerType <span class="token keyword">TRIGGER</span> triggerName<span class="token operator">=</span>identifier triggerEventClause <span class="token keyword">ON</span> pathPattern <span class="token keyword">AS</span> className<span class="token operator">=</span>STRING_LITERAL uriClause? triggerAttributeClause?</span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">triggerType</span>
<span class="line"></span>
<span class="line">​ : STATELESS <span class="token operator">|</span> STATEFUL</span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">triggerEventClause</span>
<span class="line"></span>
<span class="line">​ : <span class="token punctuation">(</span>BEFORE <span class="token operator">|</span> <span class="token keyword">AFTER</span><span class="token punctuation">)</span> <span class="token keyword">INSERT</span></span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">uriClause</span>
<span class="line"></span>
<span class="line">​ : <span class="token keyword">USING</span> URI uri</span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">uri</span>
<span class="line"></span>
<span class="line">​ : STRING_LITERAL</span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">triggerAttributeClause</span>
<span class="line"></span>
<span class="line">​ : <span class="token keyword">WITH</span> LR_BRACKET triggerAttribute <span class="token punctuation">(</span>COMMA triggerAttribute<span class="token punctuation">)</span><span class="token operator">*</span> RR_BRACKET</span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">triggerAttribute</span>
<span class="line"></span>
<span class="line">​ : <span class="token keyword">key</span><span class="token operator">=</span>attributeKey operator_eq <span class="token keyword">value</span><span class="token operator">=</span>attributeValue</span>
<span class="line"></span>
<span class="line">​ <span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="sql-语句示例" tabindex="-1"><a class="header-anchor" href="#sql-语句示例"><span>SQL 语句示例</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> STATELESS <span class="token keyword">TRIGGER</span> triggerTest</span>
<span class="line"></span>
<span class="line">BEFORE <span class="token keyword">INSERT</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">ON</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span><span class="token operator">*</span><span class="token operator">*</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">AS</span> <span class="token string">&#39;org.apache.iotdb.trigger.ClusterAlertingExample&#39;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">USING</span> URI <span class="token string">&#39;http://jar/ClusterAlertingExample.jar&#39;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">WITH</span> <span class="token punctuation">(</span></span>
<span class="line"></span>
<span class="line">​ <span class="token string">&quot;name&quot;</span> <span class="token operator">=</span> <span class="token string">&quot;trigger&quot;</span><span class="token punctuation">,</span></span>
<span class="line"></span>
<span class="line">​ <span class="token string">&quot;limit&quot;</span> <span class="token operator">=</span> <span class="token string">&quot;100&quot;</span></span>
<span class="line"></span>
<span class="line"><span class="token punctuation">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="卸载触发器" tabindex="-1"><a class="header-anchor" href="#卸载触发器"><span>卸载触发器</span></a></h3><h4 id="卸载触发器的-sql-语法如下" tabindex="-1"><a class="header-anchor" href="#卸载触发器的-sql-语法如下"><span>卸载触发器的 SQL 语法如下:</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token comment">// Drop Trigger</span></span>
<span class="line"></span>
<span class="line">dropTrigger</span>
<span class="line"></span>
<span class="line"> : <span class="token keyword">DROP</span> <span class="token keyword">TRIGGER</span> triggerName<span class="token operator">=</span>identifier</span>
<span class="line"></span>
<span class="line"><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="示例语句" tabindex="-1"><a class="header-anchor" href="#示例语句"><span>示例语句</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">DROP</span> <span class="token keyword">TRIGGER</span> triggerTest1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="查询触发器" tabindex="-1"><a class="header-anchor" href="#查询触发器"><span>查询触发器</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> TRIGGERS</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="连续查询-continuous-query-cq" tabindex="-1"><a class="header-anchor" href="#连续查询-continuous-query-cq"><span>连续查询(Continuous Query, CQ)</span></a></h2><h3 id="语法" tabindex="-1"><a class="header-anchor" href="#语法"><span>语法</span></a></h3><div class="language-Go line-numbers-mode" data-highlighter="prismjs" data-ext="Go" data-title="Go"><pre><code><span class="line">CREATE (CONTINUOUS QUERY | CQ) &lt;cq_id&gt; </span>
<span class="line">[RESAMPLE </span>
<span class="line"> [EVERY &lt;every_interval&gt;] </span>
<span class="line"> [BOUNDARY &lt;execution_boundary_time&gt;]</span>
<span class="line"> [RANGE &lt;start_time_offset&gt;[, end_time_offset]] </span>
<span class="line">]</span>
<span class="line">[TIMEOUT POLICY BLOCKED|DISCARD]</span>
<span class="line">BEGIN </span>
<span class="line"> SELECT CLAUSE</span>
<span class="line"> INTO CLAUSE</span>
<span class="line"> FROM CLAUSE</span>
<span class="line"> [WHERE CLAUSE]</span>
<span class="line"> [GROUP BY(&lt;group_by_interval&gt;[, &lt;sliding_step&gt;]) [, level = &lt;level&gt;]]</span>
<span class="line"> [HAVING CLAUSE]</span>
<span class="line"> [FILL ({PREVIOUS | LINEAR | constant} (, interval=DURATION_LITERAL)?)]</span>
<span class="line"> [LIMIT rowLimit OFFSET rowOffset]</span>
<span class="line"> [ALIGN BY DEVICE]</span>
<span class="line">END</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="配置连续查询执行的周期性间隔" tabindex="-1"><a class="header-anchor" href="#配置连续查询执行的周期性间隔"><span>配置连续查询执行的周期性间隔</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> CONTINUOUS QUERY cq1</span>
<span class="line"></span>
<span class="line">RESAMPLE EVERY <span class="token number">20</span>s</span>
<span class="line"></span>
<span class="line"><span class="token keyword">BEGIN</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">SELECT</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">INTO</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt01<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span><span class="token punctuation">(</span><span class="token number">10</span>s<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">END</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">\\<span class="token operator">&gt;</span> <span class="token keyword">SELECT</span> temperature_max <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="配置连续查询的时间窗口大小" tabindex="-1"><a class="header-anchor" href="#配置连续查询的时间窗口大小"><span>配置连续查询的时间窗口大小</span></a></h4><div class="language-text line-numbers-mode" data-highlighter="prismjs" data-ext="text" data-title="text"><pre><code><span class="line">CREATE CONTINUOUS QUERY cq2</span>
<span class="line"></span>
<span class="line">RESAMPLE RANGE 40s</span>
<span class="line"></span>
<span class="line">BEGIN</span>
<span class="line"></span>
<span class="line"> SELECT max_value(temperature)</span>
<span class="line"></span>
<span class="line"> INTO root.ln.wf02.wt02(temperature_max), root.ln.wf02.wt01(temperature_max), root.ln.wf01.wt02(temperature_max), root.ln.wf01.wt01(temperature_max)</span>
<span class="line"></span>
<span class="line"> FROM root.ln.*.*</span>
<span class="line"></span>
<span class="line"> GROUP BY(10s)</span>
<span class="line"></span>
<span class="line">END</span>
<span class="line"></span>
<span class="line"></span>
<span class="line">\\&gt; SELECT temperature_max from root.ln.*.*;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="同时配置连续查询执行的周期性间隔和时间窗口大小" tabindex="-1"><a class="header-anchor" href="#同时配置连续查询执行的周期性间隔和时间窗口大小"><span>同时配置连续查询执行的周期性间隔和时间窗口大小</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> CONTINUOUS QUERY cq3</span>
<span class="line"></span>
<span class="line">RESAMPLE EVERY <span class="token number">20</span>s RANGE <span class="token number">40</span>s</span>
<span class="line"></span>
<span class="line"><span class="token keyword">BEGIN</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">SELECT</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">INTO</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt01<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span><span class="token punctuation">(</span><span class="token number">10</span>s<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> FILL<span class="token punctuation">(</span><span class="token number">100.0</span><span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">END</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">\\<span class="token operator">&gt;</span> <span class="token keyword">SELECT</span> temperature_max <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="配置连续查询每次查询执行时间窗口的结束时间" tabindex="-1"><a class="header-anchor" href="#配置连续查询每次查询执行时间窗口的结束时间"><span>配置连续查询每次查询执行时间窗口的结束时间</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> CONTINUOUS QUERY cq4</span>
<span class="line"></span>
<span class="line">RESAMPLE EVERY <span class="token number">20</span>s RANGE <span class="token number">40</span>s<span class="token punctuation">,</span> <span class="token number">20</span>s</span>
<span class="line"></span>
<span class="line"><span class="token keyword">BEGIN</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">SELECT</span> max_value<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">INTO</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf02<span class="token punctuation">.</span>wt01<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt02<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span><span class="token punctuation">,</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span>wf01<span class="token punctuation">.</span>wt01<span class="token punctuation">(</span>temperature_max<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">GROUP</span> <span class="token keyword">BY</span><span class="token punctuation">(</span><span class="token number">10</span>s<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> FILL<span class="token punctuation">(</span><span class="token number">100.0</span><span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">END</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">\\<span class="token operator">&gt;</span> <span class="token keyword">SELECT</span> temperature_max <span class="token keyword">from</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h4 id="没有group-by-time子句的连续查询" tabindex="-1"><a class="header-anchor" href="#没有group-by-time子句的连续查询"><span>没有GROUP BY TIME子句的连续查询</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> CONTINUOUS QUERY cq5</span>
<span class="line"></span>
<span class="line">RESAMPLE EVERY <span class="token number">20</span>s</span>
<span class="line"></span>
<span class="line"><span class="token keyword">BEGIN</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">SELECT</span> temperature <span class="token operator">+</span> <span class="token number">1</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">INTO</span> root<span class="token punctuation">.</span>precalculated_sg<span class="token punctuation">.</span>::<span class="token punctuation">(</span>temperature<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>ln<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span></span>
<span class="line"></span>
<span class="line"> align <span class="token keyword">by</span> device</span>
<span class="line"></span>
<span class="line"><span class="token keyword">END</span></span>
<span class="line"></span>
<span class="line"></span>
<span class="line"></span>
<span class="line">\\<span class="token operator">&gt;</span> <span class="token keyword">SELECT</span> temperature <span class="token keyword">from</span> root<span class="token punctuation">.</span>precalculated_sg<span class="token punctuation">.</span><span class="token operator">*</span><span class="token punctuation">.</span><span class="token operator">*</span> align <span class="token keyword">by</span> device<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="连续查询的管理" tabindex="-1"><a class="header-anchor" href="#连续查询的管理"><span>连续查询的管理</span></a></h3><h4 id="查询系统已有的连续查询" tabindex="-1"><a class="header-anchor" href="#查询系统已有的连续查询"><span>查询系统已有的连续查询</span></a></h4><p>展示集群中所有的已注册的连续查询</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> <span class="token punctuation">(</span>CONTINUOUS QUERIES <span class="token operator">|</span> CQS<span class="token punctuation">)</span> </span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> CONTINUOUS QUERIES<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="删除已有的连续查询" tabindex="-1"><a class="header-anchor" href="#删除已有的连续查询"><span>删除已有的连续查询</span></a></h4><p>删除指定的名为cq_id的连续查询:</p><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">DROP</span> <span class="token punctuation">(</span>CONTINUOUS QUERY <span class="token operator">|</span> CQ<span class="token punctuation">)</span> <span class="token operator">&lt;</span>cq_id<span class="token operator">&gt;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">DROP</span> CONTINUOUS QUERY s1_count_cq<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="作为子查询的替代品" tabindex="-1"><a class="header-anchor" href="#作为子查询的替代品"><span>作为子查询的替代品</span></a></h4><ol><li>创建一个连续查询</li></ol><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> CQ s1_count_cq </span>
<span class="line"></span>
<span class="line"><span class="token keyword">BEGIN</span> </span>
<span class="line"></span>
<span class="line">​ <span class="token keyword">SELECT</span> <span class="token function">count</span><span class="token punctuation">(</span>s1<span class="token punctuation">)</span> </span>
<span class="line"></span>
<span class="line">​ <span class="token keyword">INTO</span> root<span class="token punctuation">.</span>sg_count<span class="token punctuation">.</span>d<span class="token punctuation">.</span>count_s1</span>
<span class="line"></span>
<span class="line">​ <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d</span>
<span class="line"></span>
<span class="line">​ <span class="token keyword">GROUP</span> <span class="token keyword">BY</span><span class="token punctuation">(</span><span class="token number">30</span>m<span class="token punctuation">)</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">END</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><ol><li>查询连续查询的结果</li></ol><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> <span class="token function">avg</span><span class="token punctuation">(</span>count_s1<span class="token punctuation">)</span> <span class="token keyword">from</span> root<span class="token punctuation">.</span>sg_count<span class="token punctuation">.</span>d<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="用户自定义函数" tabindex="-1"><a class="header-anchor" href="#用户自定义函数"><span>用户自定义函数</span></a></h2><h3 id="udfparameters" tabindex="-1"><a class="header-anchor" href="#udfparameters"><span>UDFParameters</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> UDF<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> <span class="token string">&#39;key1&#39;</span><span class="token operator">=</span><span class="token string">&#39;iotdb&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;key2&#39;</span><span class="token operator">=</span><span class="token string">&#39;123.45&#39;</span><span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="udf-注册" tabindex="-1"><a class="header-anchor" href="#udf-注册"><span>UDF 注册</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> <span class="token keyword">FUNCTION</span> <span class="token operator">&lt;</span>UDF<span class="token operator">-</span>NAME<span class="token operator">&gt;</span> <span class="token keyword">AS</span> <span class="token operator">&lt;</span>UDF<span class="token operator">-</span>CLASS<span class="token operator">-</span><span class="token keyword">FULL</span><span class="token operator">-</span>PATHNAME<span class="token operator">&gt;</span> <span class="token punctuation">(</span><span class="token keyword">USING</span> URI URI<span class="token operator">-</span>STRING<span class="token punctuation">)</span>?</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="不指定uri" tabindex="-1"><a class="header-anchor" href="#不指定uri"><span>不指定URI</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> <span class="token keyword">FUNCTION</span> example <span class="token keyword">AS</span> <span class="token string">&#39;org.apache.iotdb.udf.UDTFExample&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="指定uri" tabindex="-1"><a class="header-anchor" href="#指定uri"><span>指定URI</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">CREATE</span> <span class="token keyword">FUNCTION</span> example <span class="token keyword">AS</span> <span class="token string">&#39;org.apache.iotdb.udf.UDTFExample&#39;</span> <span class="token keyword">USING</span> URI <span class="token string">&#39;http://jar/example.jar&#39;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="udf-卸载" tabindex="-1"><a class="header-anchor" href="#udf-卸载"><span>UDF 卸载</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">DROP</span> <span class="token keyword">FUNCTION</span> <span class="token operator">&lt;</span>UDF<span class="token operator">-</span>NAME<span class="token operator">&gt;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">DROP</span> <span class="token keyword">FUNCTION</span> example</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h3 id="udf-查询" tabindex="-1"><a class="header-anchor" href="#udf-查询"><span>UDF 查询</span></a></h3><h4 id="带自定义输入参数的查询" tabindex="-1"><a class="header-anchor" href="#带自定义输入参数的查询"><span>带自定义输入参数的查询</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> example<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> <span class="token string">&#39;key1&#39;</span><span class="token operator">=</span><span class="token string">&#39;value1&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;key2&#39;</span><span class="token operator">=</span><span class="token string">&#39;value2&#39;</span><span class="token punctuation">)</span><span class="token punctuation">,</span> example<span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">,</span> <span class="token string">&#39;key3&#39;</span><span class="token operator">=</span><span class="token string">&#39;value3&#39;</span><span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> example<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> <span class="token string">&#39;key1&#39;</span><span class="token operator">=</span><span class="token string">&#39;value1&#39;</span><span class="token punctuation">,</span> <span class="token string">&#39;key2&#39;</span><span class="token operator">=</span><span class="token string">&#39;value2&#39;</span><span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h4 id="与其他查询的嵌套查询" tabindex="-1"><a class="header-anchor" href="#与其他查询的嵌套查询"><span>与其他查询的嵌套查询</span></a></h4><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SELECT</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> example<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">SELECT</span> <span class="token operator">*</span><span class="token punctuation">,</span> example<span class="token punctuation">(</span><span class="token operator">*</span><span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1 <span class="token keyword">DISABLE</span> ALIGN<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">SELECT</span> s1 <span class="token operator">*</span> example<span class="token punctuation">(</span><span class="token operator">*</span> <span class="token operator">/</span> s1 <span class="token operator">+</span> s2<span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span>
<span class="line"><span class="token keyword">SELECT</span> s1<span class="token punctuation">,</span> s2<span class="token punctuation">,</span> s1 <span class="token operator">+</span> example<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span><span class="token punctuation">,</span> s1 <span class="token operator">-</span> example<span class="token punctuation">(</span>s1 <span class="token operator">+</span> example<span class="token punctuation">(</span>s1<span class="token punctuation">,</span> s2<span class="token punctuation">)</span> <span class="token operator">/</span> s2<span class="token punctuation">)</span> <span class="token keyword">FROM</span> root<span class="token punctuation">.</span>sg<span class="token punctuation">.</span>d1<span class="token punctuation">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="查看所有注册的-udf" tabindex="-1"><a class="header-anchor" href="#查看所有注册的-udf"><span>查看所有注册的 UDF</span></a></h3><div class="language-sql line-numbers-mode" data-highlighter="prismjs" data-ext="sql" data-title="sql"><pre><code><span class="line"><span class="token keyword">SHOW</span> FUNCTIONS</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="权限管理" tabindex="-1"><a class="header-anchor" href="#权限管理"><span>权限管理</span></a></h2><h3 id="用户与角色相关" tabindex="-1"><a class="header-anchor" href="#用户与角色相关"><span>用户与角色相关</span></a></h3><ul><li>创建用户(需 MANAGE_USER 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">CREATE USER &lt;userName&gt; &lt;password&gt;</span>
<span class="line">eg: CREATE USER user1 &#39;passwd&#39;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>删除用户 (需 MANEGE_USER 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">DROP USER &lt;userName&gt;</span>
<span class="line">eg: DROP USER user1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>创建角色 (需 MANAGE_ROLE 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">CREATE ROLE &lt;roleName&gt;</span>
<span class="line">eg: CREATE ROLE role1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>删除角色 (需 MANAGE_ROLE 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">DROP ROLE &lt;roleName&gt;</span>
<span class="line">eg: DROP ROLE role1 </span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>赋予用户角色 (需 MANAGE_ROLE 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">GRANT ROLE &lt;ROLENAME&gt; TO &lt;USERNAME&gt;</span>
<span class="line">eg: GRANT ROLE admin TO user1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>移除用户角色 (需 MANAGE_ROLE 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">REVOKE ROLE &lt;ROLENAME&gt; FROM &lt;USER&gt;</span>
<span class="line">eg: REVOKE ROLE admin FROM user1</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>列出所有用户 (需 MANEGE_USER 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">LIST USER</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>列出所有角色 (需 MANAGE_ROLE 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">LIST ROLE</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><ul><li>列出指定角色下所有用户 (需 MANEGE_USER 权限)</li></ul><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">LIST USER OF ROLE &lt;roleName&gt;</span>
<span class="line">eg: LIST USER OF ROLE roleuser</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>列出指定用户下所有角色</li></ul><p>用户可以列出自己的角色,但列出其他用户的角色需要拥有 MANAGE_ROLE 权限。</p><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">LIST ROLE OF USER &lt;username&gt; </span>
<span class="line">eg: LIST ROLE OF USER tempuser</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>列出用户所有权限</li></ul><p>用户可以列出自己的权限信息,但列出其他用户的权限需要拥有 MANAGE_USER 权限。</p><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">LIST PRIVILEGES OF USER &lt;username&gt;;</span>
<span class="line">eg: LIST PRIVILEGES OF USER tempuser;</span>
<span class="line"> </span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>列出角色所有权限</li></ul><p>用户可以列出自己具有的角色的权限信息,列出其他角色的权限需要有 MANAGE_ROLE 权限。</p><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">LIST PRIVILEGES OF ROLE &lt;roleName&gt;;</span>
<span class="line">eg: LIST PRIVILEGES OF ROLE actor;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><ul><li>更新密码</li></ul><p>用户可以更新自己的密码,但更新其他用户密码需要具备MANAGE_USER 权限。</p><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">ALTER USER &lt;username&gt; SET PASSWORD &lt;password&gt;;</span>
<span class="line">eg: ALTER USER tempuser SET PASSWORD &#39;newpwd&#39;;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div></div></div><h3 id="授权与取消授权" tabindex="-1"><a class="header-anchor" href="#授权与取消授权"><span>授权与取消授权</span></a></h3><p>用户使用授权语句对赋予其他用户权限,语法如下:</p><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">GRANT &lt;PRIVILEGES&gt; ON &lt;PATHS&gt; TO ROLE/USER &lt;NAME&gt; [WITH GRANT OPTION];</span>
<span class="line">eg: GRANT READ ON root.** TO ROLE role1;</span>
<span class="line">eg: GRANT READ_DATA, WRITE_DATA ON root.t1.** TO USER user1;</span>
<span class="line">eg: GRANT READ_DATA, WRITE_DATA ON root.t1.**,root.t2.** TO USER user1;</span>
<span class="line">eg: GRANT MANAGE_ROLE ON root.** TO USER user1 WITH GRANT OPTION;</span>
<span class="line">eg: GRANT ALL ON root.** TO USER user1 WITH GRANT OPTION;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>用户使用取消授权语句可以将其他的权限取消,语法如下:</p><div class="language-SQL line-numbers-mode" data-highlighter="prismjs" data-ext="SQL" data-title="SQL"><pre><code><span class="line">REVOKE &lt;PRIVILEGES&gt; ON &lt;PATHS&gt; FROM ROLE/USER &lt;NAME&gt;;</span>
<span class="line">eg: REVOKE READ ON root.** FROM ROLE role1;</span>
<span class="line">eg: REVOKE READ_DATA, WRITE_DATA ON root.t1.** FROM USER user1;</span>
<span class="line">eg: REVOKE READ_DATA, WRITE_DATA ON root.t1.**, root.t2.** FROM USER user1;</span>
<span class="line">eg: REVOKE MANAGE_ROLE ON root.** FROM USER user1;</span>
<span class="line">eg: REVOKE ALL ON ROOT.** FROM USER user1;</span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div>`,97))])}const v=l(u,[["render",k],["__file","SQL-Manual.html.vue"]]),b=JSON.parse('{"path":"/zh/UserGuide/latest/SQL-Manual/SQL-Manual.html","title":"SQL手册","lang":"zh-CN","frontmatter":{"description":"SQL手册 元数据操作 数据库管理 创建数据库 查看数据库 删除数据库 统计数据库数量 时间序列管理 创建时间序列 简化版 错误提示 创建对齐时间序列 删除时间序列 查看时间序列 统计时间序列数量 标签点管理 重命名标签或属性 重新设置标签或属性的值 删除已经存在的标签或属性 添加新的标签 添加新的属性 更新插入别名,标签和属性 使用标签作为过滤条件查...","head":[["link",{"rel":"alternate","hreflang":"en-us","href":"https://iotdb.apache.org/UserGuide/latest/SQL-Manual/SQL-Manual.html"}],["meta",{"property":"og:url","content":"https://iotdb.apache.org/zh/UserGuide/latest/SQL-Manual/SQL-Manual.html"}],["meta",{"property":"og:site_name","content":"IoTDB Website"}],["meta",{"property":"og:title","content":"SQL手册"}],["meta",{"property":"og:description","content":"SQL手册 元数据操作 数据库管理 创建数据库 查看数据库 删除数据库 统计数据库数量 时间序列管理 创建时间序列 简化版 错误提示 创建对齐时间序列 删除时间序列 查看时间序列 统计时间序列数量 标签点管理 重命名标签或属性 重新设置标签或属性的值 删除已经存在的标签或属性 添加新的标签 添加新的属性 更新插入别名,标签和属性 使用标签作为过滤条件查..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:image","content":"https://alioss.timecho.com/docs/img/%E6%A8%A1%E6%9D%BF.png"}],["meta",{"property":"og:locale","content":"zh-CN"}],["meta",{"property":"og:locale:alternate","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-08-16T01:56:13.000Z"}],["meta",{"property":"article:modified_time","content":"2024-08-16T01:56:13.000Z"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"SQL手册\\",\\"image\\":[\\"https://alioss.timecho.com/docs/img/%E6%A8%A1%E6%9D%BF.png\\",\\"https://alioss.timecho.com/docs/img/template.jpg\\"],\\"dateModified\\":\\"2024-08-16T01:56:13.000Z\\",\\"author\\":[]}"]]},"headers":[{"level":2,"title":"元数据操作","slug":"元数据操作","link":"#元数据操作","children":[{"level":3,"title":"数据库管理","slug":"数据库管理","link":"#数据库管理","children":[]},{"level":3,"title":"时间序列管理","slug":"时间序列管理","link":"#时间序列管理","children":[]},{"level":3,"title":"时间序列路径管理","slug":"时间序列路径管理","link":"#时间序列路径管理","children":[]},{"level":3,"title":"设备模板管理","slug":"设备模板管理","link":"#设备模板管理","children":[]},{"level":3,"title":"数据存活时间管理","slug":"数据存活时间管理","link":"#数据存活时间管理","children":[]}]},{"level":2,"title":"写入数据","slug":"写入数据","link":"#写入数据","children":[{"level":3,"title":"写入单列数据","slug":"写入单列数据","link":"#写入单列数据","children":[]},{"level":3,"title":"写入多列数据","slug":"写入多列数据","link":"#写入多列数据","children":[]},{"level":3,"title":"使用服务器时间戳","slug":"使用服务器时间戳","link":"#使用服务器时间戳","children":[]},{"level":3,"title":"写入对齐时间序列数据","slug":"写入对齐时间序列数据","link":"#写入对齐时间序列数据","children":[]},{"level":3,"title":"加载 TsFile 文件数据","slug":"加载-tsfile-文件数据","link":"#加载-tsfile-文件数据","children":[]}]},{"level":2,"title":"删除数据","slug":"删除数据","link":"#删除数据","children":[{"level":3,"title":"删除单列数据","slug":"删除单列数据","link":"#删除单列数据","children":[]},{"level":3,"title":"删除多列数据","slug":"删除多列数据","link":"#删除多列数据","children":[]}]},{"level":2,"title":"数据查询","slug":"数据查询","link":"#数据查询","children":[{"level":3,"title":"基础查询","slug":"基础查询","link":"#基础查询","children":[]},{"level":3,"title":"选择表达式","slug":"选择表达式","link":"#选择表达式","children":[]},{"level":3,"title":"查询过滤条件","slug":"查询过滤条件","link":"#查询过滤条件","children":[]},{"level":3,"title":"分段分组聚合","slug":"分段分组聚合","link":"#分段分组聚合","children":[]},{"level":3,"title":"聚合结果过滤","slug":"聚合结果过滤","link":"#聚合结果过滤","children":[]},{"level":3,"title":"结果集补空值","slug":"结果集补空值","link":"#结果集补空值","children":[]},{"level":3,"title":"查询结果分页","slug":"查询结果分页","link":"#查询结果分页","children":[]},{"level":3,"title":"排序","slug":"排序","link":"#排序","children":[]},{"level":3,"title":"查询对齐模式","slug":"查询对齐模式","link":"#查询对齐模式","children":[]},{"level":3,"title":"查询写回(SELECT INTO)","slug":"查询写回-select-into","link":"#查询写回-select-into","children":[]}]},{"level":2,"title":"运维语句","slug":"运维语句","link":"#运维语句","children":[]},{"level":2,"title":"运算符","slug":"运算符-1","link":"#运算符-1","children":[{"level":3,"title":"算数运算符","slug":"算数运算符","link":"#算数运算符","children":[]},{"level":3,"title":"比较运算符","slug":"比较运算符","link":"#比较运算符","children":[]},{"level":3,"title":"逻辑运算符","slug":"逻辑运算符","link":"#逻辑运算符","children":[]}]},{"level":2,"title":"内置函数","slug":"内置函数","link":"#内置函数","children":[{"level":3,"title":"Aggregate Functions","slug":"aggregate-functions","link":"#aggregate-functions","children":[]},{"level":3,"title":"算数函数","slug":"算数函数","link":"#算数函数","children":[]},{"level":3,"title":"比较函数","slug":"比较函数","link":"#比较函数","children":[]},{"level":3,"title":"字符串处理函数","slug":"字符串处理函数","link":"#字符串处理函数","children":[]},{"level":3,"title":"数据类型转换函数","slug":"数据类型转换函数","link":"#数据类型转换函数","children":[]},{"level":3,"title":"常序列生成函数","slug":"常序列生成函数","link":"#常序列生成函数","children":[]},{"level":3,"title":"选择函数","slug":"选择函数","link":"#选择函数","children":[]},{"level":3,"title":"区间查询函数","slug":"区间查询函数","link":"#区间查询函数","children":[]},{"level":3,"title":"趋势计算函数","slug":"趋势计算函数","link":"#趋势计算函数","children":[]},{"level":3,"title":"采样函数","slug":"采样函数","link":"#采样函数","children":[]},{"level":3,"title":"时间序列处理函数","slug":"时间序列处理函数","link":"#时间序列处理函数","children":[]},{"level":3,"title":"时间序列处理函数","slug":"时间序列处理函数-1","link":"#时间序列处理函数-1","children":[]}]},{"level":2,"title":"数据质量函数库","slug":"数据质量函数库","link":"#数据质量函数库","children":[{"level":3,"title":"数据质量","slug":"数据质量","link":"#数据质量","children":[]},{"level":3,"title":"数据画像","slug":"数据画像","link":"#数据画像","children":[]},{"level":3,"title":"异常检测","slug":"异常检测","link":"#异常检测","children":[]},{"level":3,"title":"频域分析","slug":"频域分析","link":"#频域分析","children":[]},{"level":3,"title":"数据匹配","slug":"数据匹配","link":"#数据匹配","children":[]},{"level":3,"title":"数据修复","slug":"数据修复","link":"#数据修复","children":[]},{"level":3,"title":"序列发现","slug":"序列发现","link":"#序列发现","children":[]},{"level":3,"title":"机器学习","slug":"机器学习","link":"#机器学习","children":[]}]},{"level":2,"title":"Lambda 表达式","slug":"lambda-表达式","link":"#lambda-表达式","children":[]},{"level":2,"title":"条件表达式","slug":"条件表达式","link":"#条件表达式","children":[]},{"level":2,"title":"触发器","slug":"触发器","link":"#触发器","children":[{"level":3,"title":"使用 SQL 语句注册该触发器","slug":"使用-sql-语句注册该触发器","link":"#使用-sql-语句注册该触发器","children":[]},{"level":3,"title":"卸载触发器","slug":"卸载触发器","link":"#卸载触发器","children":[]},{"level":3,"title":"查询触发器","slug":"查询触发器","link":"#查询触发器","children":[]}]},{"level":2,"title":"连续查询(Continuous Query, CQ)","slug":"连续查询-continuous-query-cq","link":"#连续查询-continuous-query-cq","children":[{"level":3,"title":"语法","slug":"语法","link":"#语法","children":[]},{"level":3,"title":"连续查询的管理","slug":"连续查询的管理","link":"#连续查询的管理","children":[]}]},{"level":2,"title":"用户自定义函数","slug":"用户自定义函数","link":"#用户自定义函数","children":[{"level":3,"title":"UDFParameters","slug":"udfparameters","link":"#udfparameters","children":[]},{"level":3,"title":"UDF 注册","slug":"udf-注册","link":"#udf-注册","children":[]},{"level":3,"title":"UDF 卸载","slug":"udf-卸载","link":"#udf-卸载","children":[]},{"level":3,"title":"UDF 查询","slug":"udf-查询","link":"#udf-查询","children":[]},{"level":3,"title":"查看所有注册的 UDF","slug":"查看所有注册的-udf","link":"#查看所有注册的-udf","children":[]}]},{"level":2,"title":"权限管理","slug":"权限管理","link":"#权限管理","children":[{"level":3,"title":"用户与角色相关","slug":"用户与角色相关","link":"#用户与角色相关","children":[]},{"level":3,"title":"授权与取消授权","slug":"授权与取消授权","link":"#授权与取消授权","children":[]}]}],"git":{"createdTime":1688958677000,"updatedTime":1723773373000,"contributors":[{"name":"wanghui42","email":"105700158+wanghui42@users.noreply.github.com","commits":4},{"name":"CritasWang","email":"critas@outlook.com","commits":2},{"name":"YangCaiyin","email":"ycycse@gmail.com","commits":2},{"name":"Jackie Tien","email":"jackietien97@gmail.com","commits":1},{"name":"majialin","email":"107627937+mal117@users.noreply.github.com","commits":1}]},"readingTime":{"minutes":27.72,"words":8317},"filePathRelative":"zh/UserGuide/latest/SQL-Manual/SQL-Manual.md","localizedDate":"2023年7月10日","autoDesc":true}');export{v as comp,b as data};