blob: f791fc04cbb1749f353c310d786563b127efb5fb [file] [log] [blame]
(window.webpackJsonp=window.webpackJsonp||[]).push([[336],{734:function(s,e,t){"use strict";t.r(e);var a=t(29),n=Object(a.a)({},(function(){var s=this,e=s._self._c;return e("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[e("h1",{attrs:{id:"pagination-with-limit-offset"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#pagination-with-limit-offset"}},[s._v("#")]),s._v(" Pagination with LIMIT & OFFSET")]),s._v(" "),e("p",[s._v("When the query result set has a large amount of data, it is not conducive to display on one page. You can use the "),e("code",[s._v("LIMIT/SLIMIT")]),s._v(" clause and the "),e("code",[s._v("OFFSET/SOFFSET")]),s._v(" clause to control paging.")]),s._v(" "),e("ul",[e("li",[s._v("The "),e("code",[s._v("LIMIT")]),s._v(" and "),e("code",[s._v("SLIMIT")]),s._v(" clauses are used to control the number of rows and columns of query results.")]),s._v(" "),e("li",[s._v("The "),e("code",[s._v("OFFSET")]),s._v(" and "),e("code",[s._v("SOFFSET")]),s._v(" clauses are used to control the starting position of the result display.")])]),s._v(" "),e("h2",{attrs:{id:"row-control-over-query-results"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#row-control-over-query-results"}},[s._v("#")]),s._v(" Row Control over Query Results")]),s._v(" "),e("p",[s._v("By using LIMIT and OFFSET clauses, users control the query results in a row-related manner. We demonstrate how to use LIMIT and OFFSET clauses through the following examples.")]),s._v(" "),e("ul",[e("li",[s._v("Example 1: basic LIMIT clause")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v(" temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v('The selected device is ln group wf01 plant wt01 device; the selected timeseries is "status" and "temperature". The SQL statement requires the first 10 rows of the query result.')]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+------------------------+-----------------------------+\n| Time|root.ln.wf01.wt01.status|root.ln.wf01.wt01.temperature|\n+-----------------------------+------------------------+-----------------------------+\n|2017-11-01T00:00:00.000+08:00| true| 25.96|\n|2017-11-01T00:01:00.000+08:00| true| 24.36|\n|2017-11-01T00:02:00.000+08:00| false| 20.09|\n|2017-11-01T00:03:00.000+08:00| false| 20.18|\n|2017-11-01T00:04:00.000+08:00| false| 21.13|\n|2017-11-01T00:05:00.000+08:00| false| 22.72|\n|2017-11-01T00:06:00.000+08:00| false| 20.71|\n|2017-11-01T00:07:00.000+08:00| false| 21.45|\n|2017-11-01T00:08:00.000+08:00| false| 22.58|\n|2017-11-01T00:09:00.000+08:00| false| 20.98|\n+-----------------------------+------------------------+-----------------------------+\nTotal line number = 10\nIt costs 0.000s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br"),e("span",{staticClass:"line-number"},[s._v("12")]),e("br"),e("span",{staticClass:"line-number"},[s._v("13")]),e("br"),e("span",{staticClass:"line-number"},[s._v("14")]),e("br"),e("span",{staticClass:"line-number"},[s._v("15")]),e("br"),e("span",{staticClass:"line-number"},[s._v("16")]),e("br")])]),e("ul",[e("li",[s._v("Example 2: LIMIT clause with OFFSET")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v(" temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("offset")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v('The selected device is ln group wf01 plant wt01 device; the selected timeseries is "status" and "temperature". The SQL statement requires rows 3 to 7 of the query result be returned (with the first row numbered as row 0).')]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+------------------------+-----------------------------+\n| Time|root.ln.wf01.wt01.status|root.ln.wf01.wt01.temperature|\n+-----------------------------+------------------------+-----------------------------+\n|2017-11-01T00:03:00.000+08:00| false| 20.18|\n|2017-11-01T00:04:00.000+08:00| false| 21.13|\n|2017-11-01T00:05:00.000+08:00| false| 22.72|\n|2017-11-01T00:06:00.000+08:00| false| 20.71|\n|2017-11-01T00:07:00.000+08:00| false| 21.45|\n+-----------------------------+------------------------+-----------------------------+\nTotal line number = 5\nIt costs 0.342s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br")])]),e("ul",[e("li",[s._v("Example 3: LIMIT clause combined with WHERE clause")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v("temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("offset")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v('The selected device is ln group wf01 plant wt01 device; the selected timeseries is "status" and "temperature". The SQL statement requires rows 3 to 4 of the status and temperature sensor values between the time point of "2017-11-01T00:05:00.000" and "2017-11-01T00:12:00.000" (with the first row numbered as row 0).')]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+------------------------+-----------------------------+\n| Time|root.ln.wf01.wt01.status|root.ln.wf01.wt01.temperature|\n+-----------------------------+------------------------+-----------------------------+\n|2017-11-01T00:03:00.000+08:00| false| 20.18|\n|2017-11-01T00:04:00.000+08:00| false| 21.13|\n|2017-11-01T00:05:00.000+08:00| false| 22.72|\n|2017-11-01T00:06:00.000+08:00| false| 20.71|\n|2017-11-01T00:07:00.000+08:00| false| 21.45|\n+-----------------------------+------------------------+-----------------------------+\nTotal line number = 5\nIt costs 0.000s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br")])]),e("ul",[e("li",[s._v("Example 4: LIMIT clause combined with GROUP BY clause")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token function"}},[s._v("count")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v(" max_value"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("temperature"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("group")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("by")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("07")]),s._v("T23:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("d"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("5")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("offset")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("3")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v("The SQL statement clause requires rows 3 to 7 of the query result be returned (with the first row numbered as row 0).")]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+-------------------------------+----------------------------------------+\n| Time|count(root.ln.wf01.wt01.status)|max_value(root.ln.wf01.wt01.temperature)|\n+-----------------------------+-------------------------------+----------------------------------------+\n|2017-11-04T00:00:00.000+08:00| 1440| 26.0|\n|2017-11-05T00:00:00.000+08:00| 1440| 26.0|\n|2017-11-06T00:00:00.000+08:00| 1440| 25.99|\n|2017-11-07T00:00:00.000+08:00| 1380| 26.0|\n+-----------------------------+-------------------------------+----------------------------------------+\nTotal line number = 4\nIt costs 0.016s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br")])]),e("p",[s._v("It is worth noting that because the current FILL clause can only fill in the missing value of timeseries at a certain time point, that is to say, the execution result of FILL clause is exactly one line, so LIMIT and OFFSET are not expected to be used in combination with FILL clause, otherwise errors will be prompted. For example, executing the following SQL statement:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("sgcc"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf03"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T16:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("37")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("50.000")]),s._v(" fill"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("previous"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("m"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("The SQL statement will not be executed and the corresponding error prompt is given as follows:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("Msg: 401: line 1:107 mismatched input 'limit' expecting {<EOF>, ';'}\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("h2",{attrs:{id:"column-control-over-query-results"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#column-control-over-query-results"}},[s._v("#")]),s._v(" Column Control over Query Results")]),s._v(" "),e("p",[s._v("By using SLIMIT and SOFFSET clauses, users can control the query results in a column-related manner. We will demonstrate how to use SLIMIT and SOFFSET clauses through the following examples.")]),s._v(" "),e("ul",[e("li",[s._v("Example 1: basic SLIMIT clause")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("*")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" slimit "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v('The selected device is ln group wf01 plant wt01 device; the selected timeseries is the first column under this device, i.e., the power supply status. The SQL statement requires the status sensor values between the time point of "2017-11-01T00:05:00.000" and "2017-11-01T00:12:00.000" be selected.')]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+-----------------------------+\n| Time|root.ln.wf01.wt01.temperature|\n+-----------------------------+-----------------------------+\n|2017-11-01T00:06:00.000+08:00| 20.71|\n|2017-11-01T00:07:00.000+08:00| 21.45|\n|2017-11-01T00:08:00.000+08:00| 22.58|\n|2017-11-01T00:09:00.000+08:00| 20.98|\n|2017-11-01T00:10:00.000+08:00| 25.52|\n|2017-11-01T00:11:00.000+08:00| 22.91|\n+-----------------------------+-----------------------------+\nTotal line number = 6\nIt costs 0.000s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br"),e("span",{staticClass:"line-number"},[s._v("12")]),e("br")])]),e("ul",[e("li",[s._v("Example 2: SLIMIT clause with SOFFSET")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("*")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" slimit "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" soffset "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v('The selected device is ln group wf01 plant wt01 device; the selected timeseries is the second column under this device, i.e., the temperature. The SQL statement requires the temperature sensor values between the time point of "2017-11-01T00:05:00.000" and "2017-11-01T00:12:00.000" be selected.')]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+------------------------+\n| Time|root.ln.wf01.wt01.status|\n+-----------------------------+------------------------+\n|2017-11-01T00:06:00.000+08:00| false|\n|2017-11-01T00:07:00.000+08:00| false|\n|2017-11-01T00:08:00.000+08:00| false|\n|2017-11-01T00:09:00.000+08:00| false|\n|2017-11-01T00:10:00.000+08:00| true|\n|2017-11-01T00:11:00.000+08:00| false|\n+-----------------------------+------------------------+\nTotal line number = 6\nIt costs 0.003s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br"),e("span",{staticClass:"line-number"},[s._v("12")]),e("br")])]),e("ul",[e("li",[s._v("Example 3: SLIMIT clause combined with GROUP BY clause")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" max_value"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("*")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("group")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("by")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("07")]),s._v("T23:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("d"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" slimit "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" soffset "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+-----------------------------------+\n| Time|max_value(root.ln.wf01.wt01.status)|\n+-----------------------------+-----------------------------------+\n|2017-11-01T00:00:00.000+08:00| true|\n|2017-11-02T00:00:00.000+08:00| true|\n|2017-11-03T00:00:00.000+08:00| true|\n|2017-11-04T00:00:00.000+08:00| true|\n|2017-11-05T00:00:00.000+08:00| true|\n|2017-11-06T00:00:00.000+08:00| true|\n|2017-11-07T00:00:00.000+08:00| true|\n+-----------------------------+-----------------------------------+\nTotal line number = 7\nIt costs 0.000s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br"),e("span",{staticClass:"line-number"},[s._v("12")]),e("br"),e("span",{staticClass:"line-number"},[s._v("13")]),e("br")])]),e("ul",[e("li",[s._v("Example 4: SLIMIT clause combined with FILL clause")])]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("*")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("sgcc"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf03"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T16:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("35")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00")]),s._v(" fill"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("previous"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("m"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(" slimit "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" soffset "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v("The selected device is ln group wf01 plant wt01 device; the selected timeseries is the second column under this device, i.e., the temperature.")]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+--------------------------+\n| Time|root.sgcc.wf03.wt01.status|\n+-----------------------------+--------------------------+\n|2017-11-01T16:35:00.000+08:00| true|\n+-----------------------------+--------------------------+\nTotal line number = 1\nIt costs 0.007s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br")])]),e("h2",{attrs:{id:"row-and-column-control-over-query-results"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#row-and-column-control-over-query-results"}},[s._v("#")]),s._v(" Row and Column Control over Query Results")]),s._v(" "),e("p",[s._v("In addition to row or column control over query results, IoTDB allows users to control both rows and columns of query results. Here is a complete example with both LIMIT clauses and SLIMIT clauses.")]),s._v(" "),e("p",[s._v("The SQL statement is:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("*")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("offset")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),s._v(" slimit "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" soffset "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("which means:")]),s._v(" "),e("p",[s._v("The selected device is ln group wf01 plant wt01 device; the selected timeseries is columns 0 to 1 under this device (with the first column numbered as column 0). The SQL statement clause requires rows 100 to 109 of the query result be returned (with the first row numbered as row 0).")]),s._v(" "),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+-----------------------------+------------------------+\n| Time|root.ln.wf01.wt01.temperature|root.ln.wf01.wt01.status|\n+-----------------------------+-----------------------------+------------------------+\n|2017-11-01T01:40:00.000+08:00| 21.19| false|\n|2017-11-01T01:41:00.000+08:00| 22.79| false|\n|2017-11-01T01:42:00.000+08:00| 22.98| false|\n|2017-11-01T01:43:00.000+08:00| 21.52| false|\n|2017-11-01T01:44:00.000+08:00| 23.45| true|\n|2017-11-01T01:45:00.000+08:00| 24.06| true|\n|2017-11-01T01:46:00.000+08:00| 22.6| false|\n|2017-11-01T01:47:00.000+08:00| 23.78| true|\n|2017-11-01T01:48:00.000+08:00| 24.72| true|\n|2017-11-01T01:49:00.000+08:00| 24.68| true|\n+-----------------------------+-----------------------------+------------------------+\nTotal line number = 10\nIt costs 0.009s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br"),e("span",{staticClass:"line-number"},[s._v("12")]),e("br"),e("span",{staticClass:"line-number"},[s._v("13")]),e("br"),e("span",{staticClass:"line-number"},[s._v("14")]),e("br"),e("span",{staticClass:"line-number"},[s._v("15")]),e("br"),e("span",{staticClass:"line-number"},[s._v("16")]),e("br")])]),e("h2",{attrs:{id:"error-handling"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#error-handling"}},[s._v("#")]),s._v(" Error Handling")]),s._v(" "),e("p",[s._v("If the parameter N/SN of LIMIT/SLIMIT exceeds the size of the result set, IoTDB returns all the results as expected. For example, the query result of the original SQL statement consists of six rows, and we select the first 100 rows through the LIMIT clause:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v("temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("100")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+-----------------------------+------------------------+-----------------------------+\n| Time|root.ln.wf01.wt01.status|root.ln.wf01.wt01.temperature|\n+-----------------------------+------------------------+-----------------------------+\n|2017-11-01T00:06:00.000+08:00| false| 20.71|\n|2017-11-01T00:07:00.000+08:00| false| 21.45|\n|2017-11-01T00:08:00.000+08:00| false| 22.58|\n|2017-11-01T00:09:00.000+08:00| false| 20.98|\n|2017-11-01T00:10:00.000+08:00| true| 25.52|\n|2017-11-01T00:11:00.000+08:00| false| 22.91|\n+-----------------------------+------------------------+-----------------------------+\nTotal line number = 6\nIt costs 0.005s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br"),e("span",{staticClass:"line-number"},[s._v("7")]),e("br"),e("span",{staticClass:"line-number"},[s._v("8")]),e("br"),e("span",{staticClass:"line-number"},[s._v("9")]),e("br"),e("span",{staticClass:"line-number"},[s._v("10")]),e("br"),e("span",{staticClass:"line-number"},[s._v("11")]),e("br"),e("span",{staticClass:"line-number"},[s._v("12")]),e("br")])]),e("p",[s._v("If the parameter N/SN of LIMIT/SLIMIT clause exceeds the allowable maximum value (N/SN is of type int32), the system prompts errors. For example, executing the following SQL statement:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v("temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1234567890123456789")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("The SQL statement will not be executed and the corresponding error prompt is given as follows:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("Msg: 303: check metadata error: Out of range. LIMIT <N>: N should be Int32.\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("If the parameter N/SN of LIMIT/SLIMIT clause is not a positive intege, the system prompts errors. For example, executing the following SQL statement:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v("temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("13.1")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("The SQL statement will not be executed and the corresponding error prompt is given as follows:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("Msg: 401: line 1:129 mismatched input '.' expecting {<EOF>, ';'}\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("If the parameter OFFSET of LIMIT clause exceeds the size of the result set, IoTDB will return an empty result set. For example, executing the following SQL statement:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("status")]),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(",")]),s._v("temperature "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("limit")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("offset")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("6")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("The result is shown below:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("+----+------------------------+-----------------------------+\n|Time|root.ln.wf01.wt01.status|root.ln.wf01.wt01.temperature|\n+----+------------------------+-----------------------------+\n+----+------------------------+-----------------------------+\nEmpty set.\nIt costs 0.005s\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br"),e("span",{staticClass:"line-number"},[s._v("2")]),e("br"),e("span",{staticClass:"line-number"},[s._v("3")]),e("br"),e("span",{staticClass:"line-number"},[s._v("4")]),e("br"),e("span",{staticClass:"line-number"},[s._v("5")]),e("br"),e("span",{staticClass:"line-number"},[s._v("6")]),e("br")])]),e("p",[s._v("If the parameter SOFFSET of SLIMIT clause is not smaller than the number of available timeseries, the system prompts errors. For example, executing the following SQL statement:")]),s._v(" "),e("div",{staticClass:"language-sql line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-sql"}},[e("code",[e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("select")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("*")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("from")]),s._v(" root"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("ln"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wf01"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(".")]),s._v("wt01 "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("where")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("05")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("and")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("time")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2017")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("11")]),e("span",{pre:!0,attrs:{class:"token operator"}},[s._v("-")]),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("01")]),s._v("T00:"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("12")]),s._v(":"),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("00.000")]),s._v(" slimit "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" soffset "),e("span",{pre:!0,attrs:{class:"token number"}},[s._v("2")]),s._v("\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])]),e("p",[s._v("The SQL statement will not be executed and the corresponding error prompt is given as follows:")]),s._v(" "),e("div",{staticClass:"language- line-numbers-mode"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[s._v("Msg: 411: Meet error in query process: The value of SOFFSET (2) is equal to or exceeds the number of sequences (2) that can actually be returned.\n")])]),s._v(" "),e("div",{staticClass:"line-numbers-wrapper"},[e("span",{staticClass:"line-number"},[s._v("1")]),e("br")])])])}),[],!1,null,null,null);e.default=n.exports}}]);