This is an automated email from the ASF dual-hosted git repository.
lancelly pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iotdb-docs.git
The following commit(s) were added to refs/heads/main by this push:
new 8d8d1c6 revert
8d8d1c6 is described below
commit 8d8d1c63610d594ef1a2d428b9ef8c25cefc9ece
Author: lancelly <[email protected]>
AuthorDate: Wed Feb 28 16:41:05 2024 +0800
revert
---
.../Master/User-Manual/Operator-and-Expression.md | 3 -
.../stage/Operators-Functions/Aggregation.md | 101 +--------------
.../latest/User-Manual/Operator-and-Expression.md | 30 +++--
.../stage/Operators-Functions/Aggregation.md | 133 +++-----------------
.../Master/Reference/Function-and-Expression.md | 135 +++------------------
.../Master/User-Manual/Operator-and-Expression.md | 26 ++--
.../latest/Reference/Function-and-Expression.md | 100 ---------------
.../latest/User-Manual/Operator-and-Expression.md | 2 -
8 files changed, 60 insertions(+), 470 deletions(-)
diff --git a/src/UserGuide/Master/User-Manual/Operator-and-Expression.md
b/src/UserGuide/Master/User-Manual/Operator-and-Expression.md
index 4454f44..5d14be3 100644
--- a/src/UserGuide/Master/User-Manual/Operator-and-Expression.md
+++ b/src/UserGuide/Master/User-Manual/Operator-and-Expression.md
@@ -114,9 +114,6 @@ The built-in functions can be used in IoTDB without
registration, and the functi
| COUNT_IF | Find the number of data points that continuously meet a
given condition and the number of data points that meet the condition
(represented by keep) meet the specified threshold. | BOOLEAN
| `[keep >=/>/=/!=/</<=]threshold`:The specified threshold or threshold
condition, it is equivalent to `keep >= threshold` if `threshold` is used
alone, type of `threshold` is `INT64` `ignoreNull`:Optional, default value is
`true`;If the value is `true`, null va [...]
| TIME_DURATION | Find the difference between the timestamp of the largest
non-null value and the timestamp of the smallest non-null value in a column |
All data Types | /
| INT64 |
| MODE | Find the mode. Note: 1.Having too many different values in
the input series risks a memory exception; 2.If all the elements have the same
number of occurrences, that is no Mode, return the value with earliest time;
3.If there are many Modes, return the Mode with earliest time. | All data Types
| /
| Consistent with the input data type |
-| MAX_BY | MAX_BY(x, y) returns the value of x corresponding to the
maximum value of the input y. MAX_BY(time, x) returns the timestamp when x is
at its maximum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | Consistent with the data type of the first input x. |
-| MIN_BY | MIN_BY(x, y) returns the value of x corresponding to the
minimum value of the input y. MIN_BY(time, x) returns the timestamp when x is
at its minimum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | Consistent with the data type of the first input x. |
-
For details and examples, see the document [Aggregate
Functions](../Operators-Functions/Aggregation.md).
diff --git a/src/UserGuide/Master/stage/Operators-Functions/Aggregation.md
b/src/UserGuide/Master/stage/Operators-Functions/Aggregation.md
index afcbada..201fa0b 100644
--- a/src/UserGuide/Master/stage/Operators-Functions/Aggregation.md
+++ b/src/UserGuide/Master/stage/Operators-Functions/Aggregation.md
@@ -43,8 +43,6 @@ The aggregate functions supported by IoTDB are as follows:
| TIME_DURATION | Find the difference between the timestamp of the largest
non-null value and the timestamp of the smallest non-null value in a column |
All data Types | /
| INT64 |
| MODE | Find the mode. Note: 1.Having too many different values in
the input series risks a memory exception; 2.If all the elements have the same
number of occurrences, that is no Mode, return the value with earliest time;
3.If there are many Modes, return the Mode with earliest time. | All data Types
| /
| Consistent with the input data type |
| COUNT_TIME | The number of timestamps in the query data set. When used
with `align by device`, the result is the number of timestamps in the data set
per device.
| All data
Types, the input parameter can only be `*` | /
[...]
-| MAX_BY | MAX_BY(x, y) returns the value of x corresponding to the
maximum value of the input y. MAX_BY(time, x) returns the timestamp when x is
at its maximum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | / | Consistent with the data type of the first
input x. |
-| MIN_BY | MIN_BY(x, y) returns the value of x corresponding to the
minimum value of the input y. MIN_BY(time, x) returns the timestamp when x is
at its minimum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | /
[...]
## COUNT
@@ -292,101 +290,4 @@ Result
> 1. The parameter in count_time can only be *.
> 2. Count_time aggregation cannot be used with other aggregation functions.
> 3. Count_time aggregation used with having statement is not supported, and
> count_time aggregation can not appear in the having statement.
-> 4. Count_time does not support use with group by level, group by tag.
-
-
-### MAX_BY
-#### Function Definition
-max_by(x, y): Returns the value of x at the timestamp when y is at its maximum.
-- max_by must have two input parameters x and y.
-- Both x and y can use the keyword time, with max_by(time, x) returning the
timestamp when x is at its maximum value.
-- If x is null at the timestamp corresponding to the maximum value of y, null
is returned.
-- If y reaches its maximum value at multiple timestamps, the x value
corresponding to the smallest timestamp among those maximum values is returned.
-- Consistent with IoTDB max_value, only INT32, INT64, FLOAT, DOUBLE are
supported as inputs for y, while all six types are supported as inputs for x.
-- Direct numerical values are not allowed as inputs for either x or y.
-
-#### Grammar
-```sql
-select max_by(x, y) from root.sg
-select max_by(time, x) from root.sg
-```
-
-#### Examples
-
-##### Input Data
-```sql
-IoTDB> select * from root.test
-+-----------------------------+-----------+-----------+
-| Time|root.test.a|root.test.b|
-+-----------------------------+-----------+-----------+
-|1970-01-01T08:00:00.001+08:00| 1.0| 10.0|
-|1970-01-01T08:00:00.002+08:00| 2.0| 10.0|
-|1970-01-01T08:00:00.003+08:00| 3.0| 10.0|
-|1970-01-01T08:00:00.004+08:00| 10.0| 10.0|
-|1970-01-01T08:00:00.005+08:00| 10.0| 12.0|
-|1970-01-01T08:00:00.006+08:00| 6.0| 6.0|
-+-----------------------------+-----------+-----------+
-```
-##### Query Example
-Querying the timestamp corresponding to the maximum value:
-```sql
-IoTDB> select max_by(time, a), max_value(a) from root.test
-+-------------------------+------------------------+
-|max_by(Time, root.test.a)| max_value(root.test.a)|
-+-------------------------+------------------------+
-| 4| 10.0|
-+-------------------------+------------------------+
-```
-
-Finding the value of b when a is at its maximum:
-```sql
-IoTDB> select max_by(b, a) from root.test
-+--------------------------------+
-|max_by(root.test.b, root.test.a)|
-+--------------------------------+
-| 10.0|
-+--------------------------------+
-```
-
-Using with expressions:
-```sql
-IoTDB> select max_by(b + 1, a * 2) from root.test
-+----------------------------------------+
-|max_by(root.test.b + 1, root.test.a * 2)|
-+----------------------------------------+
-| 11.0|
-+----------------------------------------+
-```
-
-Using with group by clause:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms)
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-
-Using with having clause:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) having
max_by(b, a) > 4.0
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-Using with order by clause:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) order by time
desc
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-```
\ No newline at end of file
+> 4. Count_time does not support use with group by level, group by tag.
\ No newline at end of file
diff --git a/src/UserGuide/latest/User-Manual/Operator-and-Expression.md
b/src/UserGuide/latest/User-Manual/Operator-and-Expression.md
index 4ca8bf8..5d14be3 100644
--- a/src/UserGuide/latest/User-Manual/Operator-and-Expression.md
+++ b/src/UserGuide/latest/User-Manual/Operator-and-Expression.md
@@ -99,23 +99,21 @@ The built-in functions can be used in IoTDB without
registration, and the functi
### Aggregate Functions
-| Function Name | Description
| Allowed Input
Series Data Types | Required Attributes
| Output Series Data Type |
-|---------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
------------------------------- |
------------------------------------------------------------ |
----------------------------------- |
-| SUM | Summation.
| INT32 INT64 FLOAT
DOUBLE | / |
DOUBLE |
-| COUNT | Counts the number of data points.
| All types
| / |
INT |
-| AVG | Average.
| INT32 INT64 FLOAT
DOUBLE | / |
DOUBLE |
-| EXTREME | Finds the value with the largest absolute value. Returns a
positive value if the maximum absolute value of positive and negative values is
equal.
| INT32 INT64
FLOAT DOUBLE | /
| Consistent with the input data type |
-| MAX_VALUE | Find the maximum value.
| INT32 INT64 FLOAT
DOUBLE | / |
Consistent with the input data type |
-| MIN_VALUE | Find the minimum value.
| INT32 INT64 FLOAT
DOUBLE | / |
Consistent with the input data type |
-| FIRST_VALUE | Find the value with the smallest timestamp.
| All data types
| / |
Consistent with input data type |
-| LAST_VALUE | Find the value with the largest timestamp.
| All data types
| / |
Consistent with input data type |
-| MAX_TIME | Find the maximum timestamp.
| All data Types
| / |
Timestamp |
-| MIN_TIME | Find the minimum timestamp.
| All data Types
| / |
Timestamp |
-| COUNT_IF | Find the number of data points that continuously meet a
given condition and the number of data points that meet the condition
(represented by keep) meet the specified threshold.
|
BOOLEAN | `[keep >=/>/=/!=/</<=]threshold`:The
specified threshold or threshold condition, it is equivalent to `keep >=
threshold` if `threshold` is used alone, type o [...]
-| TIME_DURATION | Find the difference between the timestamp of the largest
non-null value and the timestamp of the smallest non-null value in a column
| All data
Types | /
| INT64 |
+| Function Name | Description
| Allowed Input Series Data Types | Required Attributes
| Output Series Data Type |
+| ------------- | ------------------------------------------------------------
| ------------------------------- |
------------------------------------------------------------ |
----------------------------------- |
+| SUM | Summation.
| INT32 INT64 FLOAT DOUBLE | /
| DOUBLE |
+| COUNT | Counts the number of data points.
| All types | /
| INT |
+| AVG | Average.
| INT32 INT64 FLOAT DOUBLE | /
| DOUBLE |
+| EXTREME | Finds the value with the largest absolute value. Returns a
positive value if the maximum absolute value of positive and negative values is
equal. | INT32 INT64 FLOAT DOUBLE | /
| Consistent with the input data type |
+| MAX_VALUE | Find the maximum value.
| INT32 INT64 FLOAT DOUBLE | /
| Consistent with the input data type |
+| MIN_VALUE | Find the minimum value.
| INT32 INT64 FLOAT DOUBLE | /
| Consistent with the input data type |
+| FIRST_VALUE | Find the value with the smallest timestamp.
| All data types | /
| Consistent with input data type |
+| LAST_VALUE | Find the value with the largest timestamp.
| All data types | /
| Consistent with input data type |
+| MAX_TIME | Find the maximum timestamp.
| All data Types | /
| Timestamp |
+| MIN_TIME | Find the minimum timestamp.
| All data Types | /
| Timestamp |
+| COUNT_IF | Find the number of data points that continuously meet a
given condition and the number of data points that meet the condition
(represented by keep) meet the specified threshold. | BOOLEAN
| `[keep >=/>/=/!=/</<=]threshold`:The specified threshold or threshold
condition, it is equivalent to `keep >= threshold` if `threshold` is used
alone, type of `threshold` is `INT64` `ignoreNull`:Optional, default value is
`true`;If the value is `true`, null va [...]
+| TIME_DURATION | Find the difference between the timestamp of the largest
non-null value and the timestamp of the smallest non-null value in a column |
All data Types | /
| INT64 |
| MODE | Find the mode. Note: 1.Having too many different values in
the input series risks a memory exception; 2.If all the elements have the same
number of occurrences, that is no Mode, return the value with earliest time;
3.If there are many Modes, return the Mode with earliest time. | All data Types
| /
| Consistent with the input data type |
-| MAX_BY | MAX_BY(x, y) returns the value of x corresponding to the
maximum value of the input y. MAX_BY(time, x) returns the timestamp when x is
at its maximum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | Consistent with the data type of the first input x. |
-| MIN_BY | MIN_BY(x, y) returns the value of x corresponding to the
minimum value of the input y. MIN_BY(time, x) returns the timestamp when x is
at its minimum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | Consistent with the data type of the first input x. |
For details and examples, see the document [Aggregate
Functions](../Operators-Functions/Aggregation.md).
diff --git a/src/UserGuide/latest/stage/Operators-Functions/Aggregation.md
b/src/UserGuide/latest/stage/Operators-Functions/Aggregation.md
index bf36b5b..201fa0b 100644
--- a/src/UserGuide/latest/stage/Operators-Functions/Aggregation.md
+++ b/src/UserGuide/latest/stage/Operators-Functions/Aggregation.md
@@ -27,24 +27,22 @@ All aggregate functions except `COUNT()`, `COUNT_IF()`
ignore null values and re
The aggregate functions supported by IoTDB are as follows:
-| Function Name | Description
| Allowed Input Series Data Types | Required Attributes
[...]
-| ------------- | ------------------------------------------------------------
|-----------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[...]
-| SUM | Summation.
| INT32 INT64 FLOAT DOUBLE | /
[...]
-| COUNT | Counts the number of data points.
| All data types | /
[...]
-| AVG | Average.
| INT32 INT64 FLOAT DOUBLE | /
[...]
-| EXTREME | Finds the value with the largest absolute value. Returns a
positive value if the maximum absolute value of positive and negative values is
equal. | INT32 INT64 FLOAT DOUBLE | /
[...]
-| MAX_VALUE | Find the maximum value.
| INT32 INT64 FLOAT DOUBLE | /
[...]
-| MIN_VALUE | Find the minimum value.
| INT32 INT64 FLOAT DOUBLE | /
[...]
-| FIRST_VALUE | Find the value with the smallest timestamp.
| All data types | /
[...]
-| LAST_VALUE | Find the value with the largest timestamp.
| All data types | /
[...]
-| MAX_TIME | Find the maximum timestamp.
| All data Types | /
[...]
-| MIN_TIME | Find the minimum timestamp.
| All data Types | /
[...]
-| COUNT_IF | Find the number of data points that continuously meet a
given condition and the number of data points that meet the condition
(represented by keep) meet the specified threshold. | BOOLEAN
| `[keep >=/>/=/!=/</<=]threshold`:The specified
threshold or threshold condition, it is equivalent to `keep >= threshold` if
`threshold` is used alone, type of `threshold` is `INT64`
`ignoreNull`:Optional, default value is `true`;If the valu [...]
-| TIME_DURATION | Find the difference between the timestamp of the largest
non-null value and the timestamp of the smallest non-null value in a column |
All data Types | /
[...]
-| MODE | Find the mode. Note: 1.Having too many different values in
the input series risks a memory exception; 2.If all the elements have the same
number of occurrences, that is no Mode, return the value with earliest time;
3.If there are many Modes, return the Mode with earliest time. | All data Types
| /
[...]
-| COUNT_TIME | The number of timestamps in the query data set. When used
with `align by device`, the result is the number of timestamps in the data set
per device.
| All data
Types, the input parameter can only be `*` | /
[...]
-| MAX_BY | MAX_BY(x, y) returns the value of x corresponding to the
maximum value of the input y. MAX_BY(time, x) returns the timestamp when x is
at its maximum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | / | Consistent with the data type of the first
input x. |
-| MIN_BY | MIN_BY(x, y) returns the value of x corresponding to the
minimum value of the input y. MIN_BY(time, x) returns the timestamp when x is
at its minimum value.
| The first
input x can be of any type, while the second input y must be of type INT32,
INT64, FLOAT, or DOUBLE. | /
[...]
+| Function Name | Description
| Allowed Input Series Data Types | Required Attributes
| Output Series Data Type |
+| ------------- | ------------------------------------------------------------
|-----------------------------------------------------|
------------------------------------------------------------ |
----------------------------------- |
+| SUM | Summation.
| INT32 INT64 FLOAT DOUBLE | /
| DOUBLE |
+| COUNT | Counts the number of data points.
| All data types | /
| INT |
+| AVG | Average.
| INT32 INT64 FLOAT DOUBLE | /
| DOUBLE |
+| EXTREME | Finds the value with the largest absolute value. Returns a
positive value if the maximum absolute value of positive and negative values is
equal. | INT32 INT64 FLOAT DOUBLE | /
| Consistent with the input data
type |
+| MAX_VALUE | Find the maximum value.
| INT32 INT64 FLOAT DOUBLE | /
| Consistent with the input data type |
+| MIN_VALUE | Find the minimum value.
| INT32 INT64 FLOAT DOUBLE | /
| Consistent with the input data type |
+| FIRST_VALUE | Find the value with the smallest timestamp.
| All data types | /
| Consistent with input data type |
+| LAST_VALUE | Find the value with the largest timestamp.
| All data types | /
| Consistent with input data type |
+| MAX_TIME | Find the maximum timestamp.
| All data Types | /
| Timestamp |
+| MIN_TIME | Find the minimum timestamp.
| All data Types | /
| Timestamp |
+| COUNT_IF | Find the number of data points that continuously meet a
given condition and the number of data points that meet the condition
(represented by keep) meet the specified threshold. | BOOLEAN
| `[keep >=/>/=/!=/</<=]threshold`:The specified
threshold or threshold condition, it is equivalent to `keep >= threshold` if
`threshold` is used alone, type of `threshold` is `INT64`
`ignoreNull`:Optional, default value is `true`;If the valu [...]
+| TIME_DURATION | Find the difference between the timestamp of the largest
non-null value and the timestamp of the smallest non-null value in a column |
All data Types | /
| INT64 |
+| MODE | Find the mode. Note: 1.Having too many different values in
the input series risks a memory exception; 2.If all the elements have the same
number of occurrences, that is no Mode, return the value with earliest time;
3.If there are many Modes, return the Mode with earliest time. | All data Types
| /
| Consistent with the input data type |
+| COUNT_TIME | The number of timestamps in the query data set. When used
with `align by device`, the result is the number of timestamps in the data set
per device.
| All data
Types, the input parameter can only be `*` | /
[...]
## COUNT
@@ -292,101 +290,4 @@ Result
> 1. The parameter in count_time can only be *.
> 2. Count_time aggregation cannot be used with other aggregation functions.
> 3. Count_time aggregation used with having statement is not supported, and
> count_time aggregation can not appear in the having statement.
-> 4. Count_time does not support use with group by level, group by tag.
-
-
-### MAX_BY
-#### Function Definition
-max_by(x, y): Returns the value of x at the timestamp when y is at its maximum.
-- max_by must have two input parameters x and y.
-- Both x and y can use the keyword time, with max_by(time, x) returning the
timestamp when x is at its maximum value.
-- If x is null at the timestamp corresponding to the maximum value of y, null
is returned.
-- If y reaches its maximum value at multiple timestamps, the x value
corresponding to the smallest timestamp among those maximum values is returned.
-- Consistent with IoTDB max_value, only INT32, INT64, FLOAT, DOUBLE are
supported as inputs for y, while all six types are supported as inputs for x.
-- Direct numerical values are not allowed as inputs for either x or y.
-
-#### Grammar
-```sql
-select max_by(x, y) from root.sg
-select max_by(time, x) from root.sg
-```
-
-#### Examples
-
-##### Input Data
-```sql
-IoTDB> select * from root.test
-+-----------------------------+-----------+-----------+
-| Time|root.test.a|root.test.b|
-+-----------------------------+-----------+-----------+
-|1970-01-01T08:00:00.001+08:00| 1.0| 10.0|
-|1970-01-01T08:00:00.002+08:00| 2.0| 10.0|
-|1970-01-01T08:00:00.003+08:00| 3.0| 10.0|
-|1970-01-01T08:00:00.004+08:00| 10.0| 10.0|
-|1970-01-01T08:00:00.005+08:00| 10.0| 12.0|
-|1970-01-01T08:00:00.006+08:00| 6.0| 6.0|
-+-----------------------------+-----------+-----------+
-```
-##### Query Example
-Querying the timestamp corresponding to the maximum value:
-```sql
-IoTDB> select max_by(time, a), max_value(a) from root.test
-+-------------------------+------------------------+
-|max_by(Time, root.test.a)| max_value(root.test.a)|
-+-------------------------+------------------------+
-| 4| 10.0|
-+-------------------------+------------------------+
-```
-
-Finding the value of b when a is at its maximum:
-```sql
-IoTDB> select max_by(b, a) from root.test
-+--------------------------------+
-|max_by(root.test.b, root.test.a)|
-+--------------------------------+
-| 10.0|
-+--------------------------------+
-```
-
-Using with expressions:
-```sql
-IoTDB> select max_by(b + 1, a * 2) from root.test
-+----------------------------------------+
-|max_by(root.test.b + 1, root.test.a * 2)|
-+----------------------------------------+
-| 11.0|
-+----------------------------------------+
-```
-
-Using with group by clause:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms)
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-
-Using with having clause:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) having
max_by(b, a) > 4.0
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-Using with order by clause:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) order by time
desc
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-```
\ No newline at end of file
+> 4. Count_time does not support use with group by level, group by tag.
\ No newline at end of file
diff --git a/src/zh/UserGuide/Master/Reference/Function-and-Expression.md
b/src/zh/UserGuide/Master/Reference/Function-and-Expression.md
index 65f1680..6b126e5 100644
--- a/src/zh/UserGuide/Master/Reference/Function-and-Expression.md
+++ b/src/zh/UserGuide/Master/Reference/Function-and-Expression.md
@@ -29,24 +29,22 @@
IoTDB 支持的聚合函数如下:
-| 函数名 | 功能描述
| 允许的输入类型
| 必要的属性参数
| 输出类型 |
-|---------------|----------------------------------------------------------------------------------------------------------|-------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------|
-| SUM | 求和。
| INT32 INT64 FLOAT DOUBLE
| 无
| DOUBLE |
-| COUNT | 计算数据点数。
| 所有类型
| 无
| INT64 |
-| AVG | 求平均值。
| INT32 INT64 FLOAT DOUBLE
| 无
| DOUBLE |
-| EXTREME | 求具有最大绝对值的值。如果正值和负值的最大绝对值相等,则返回正值。
| INT32 INT64 FLOAT DOUBLE
| 无
| 与输入类型一致 |
-| MAX_VALUE | 求最大值。
| INT32 INT64 FLOAT DOUBLE
| 无
| 与输入类型一致 |
-| MIN_VALUE | 求最小值。
| INT32 INT64 FLOAT DOUBLE
| 无
| 与输入类型一致 |
-| FIRST_VALUE | 求时间戳最小的值。
| 所有类型
| 无
| 与输入类型一致 |
-| LAST_VALUE | 求时间戳最大的值。
| 所有类型
| 无
| 与输入类型一致 |
-| MAX_TIME | 求最大时间戳。
| 所有类型
| 无
| Timestamp |
-| MIN_TIME | 求最小时间戳。
| 所有类型
| 无
| Timestamp |
-| COUNT_IF | 求数据点连续满足某一给定条件,且满足条件的数据点个数(用keep表示)满足指定阈值的次数。
| BOOLEAN
| `[keep
>=/>/=/!=/</<=]threshold`:被指定的阈值或阈值条件,若只使用`threshold`则等价于`keep >=
threshold`,`threshold`类型为`INT64` <br>
`ignoreNull`:可选,默认为`true`;为`true`表示忽略null值,即如果中间出现null值,直接忽略,不会打断连续性;为`false`表示不忽略null值,即如果中间出现null值,会打断连续性
| INT64 |
-| TIME_DURATION | 求某一列最大一个不为NULL的值所在时间戳与最小一个不为NULL的值所在时间戳的时间戳差
| 所有类型
| 无
| INT64 |
-| MODE | 求众数。注意:<br>1.输入序列的不同值个数过多时会有内存异常风险;
<br>2.如果所有元素出现的频次相同,即没有众数,则返回对应时间戳最小的值; <br>3.如果有多个众数,则返回对应时间戳最小的众数。 | 所有类型
| 无
| 与输入类型一致 |
-| COUNT_TIME | 查询结果集的时间戳的数量。与 align by device 搭配使用时,得到的结果是每个设备的结果集的时间戳的数量。
| 所有类型,输入参数只能为*
| 无 | INT64 |
-| MAX_BY | MAX_BY(x, y) 求二元输入 x 和 y 在 y 最大时对应的 x 的值。MAX_BY(time, x) 返回
x 取最大值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是
INT32 INT64 FLOAT DOUBLE | 无 | 与第一个输入 x 的数据类型一致 |
-| MIN_BY | MIN_BY(x, y) 求二元输入 x 和 y 在 y 最小时对应的 x 的值。MIN_BY(time, x) 返回
x 取最小值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是
INT32 INT64 FLOAT DOUBLE | 无 | 与第一个输入 x 的数据类型一致 |
+| 函数名 | 功能描述
| 允许的输入类型 |
必要的属性参数
| 输出类型 |
+|---------------|----------------------------------------------------------------------------------------------------------|--------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------|
+| SUM | 求和。
| INT32 INT64 FLOAT DOUBLE | 无
| DOUBLE |
+| COUNT | 计算数据点数。
| 所有类型 | 无
| INT64 |
+| AVG | 求平均值。
| INT32 INT64 FLOAT DOUBLE | 无
| DOUBLE |
+| EXTREME | 求具有最大绝对值的值。如果正值和负值的最大绝对值相等,则返回正值。
| INT32 INT64 FLOAT DOUBLE | 无
| 与输入类型一致 |
+| MAX_VALUE | 求最大值。
| INT32 INT64 FLOAT DOUBLE | 无
| 与输入类型一致 |
+| MIN_VALUE | 求最小值。
| INT32 INT64 FLOAT DOUBLE | 无
| 与输入类型一致 |
+| FIRST_VALUE | 求时间戳最小的值。
| 所有类型 | 无
| 与输入类型一致 |
+| LAST_VALUE | 求时间戳最大的值。
| 所有类型 | 无
| 与输入类型一致 |
+| MAX_TIME | 求最大时间戳。
| 所有类型 | 无
| Timestamp |
+| MIN_TIME | 求最小时间戳。
| 所有类型 | 无
| Timestamp |
+| COUNT_IF | 求数据点连续满足某一给定条件,且满足条件的数据点个数(用keep表示)满足指定阈值的次数。
| BOOLEAN | `[keep
>=/>/=/!=/</<=]threshold`:被指定的阈值或阈值条件,若只使用`threshold`则等价于`keep >=
threshold`,`threshold`类型为`INT64` <br>
`ignoreNull`:可选,默认为`true`;为`true`表示忽略null值,即如果中间出现null值,直接忽略,不会打断连续性;为`false`表示不忽略null值,即如果中间出现null值,会打断连续性
| INT64 |
+| TIME_DURATION | 求某一列最大一个不为NULL的值所在时间戳与最小一个不为NULL的值所在时间戳的时间戳差
| 所有类型 | 无
| INT64 |
+| MODE | 求众数。注意:<br>1.输入序列的不同值个数过多时会有内存异常风险;
<br>2.如果所有元素出现的频次相同,即没有众数,则返回对应时间戳最小的值; <br>3.如果有多个众数,则返回对应时间戳最小的众数。 | 所有类型
| 无
|
与输入类型一致 |
+| COUNT_TIME | 查询结果集的时间戳的数量。与 align by device 搭配使用时,得到的结果是每个设备的结果集的时间戳的数量。
| 所有类型,输入参数只能为* | 无 |
INT64 |
### COUNT_IF
@@ -278,107 +276,6 @@ select count_time(*) from root.db.** group by([0, 10),
2ms) align by device
> 3. having语句里不支持使用count_time, 使用count_time聚合函数时不支持使用having语句。
> 4. count_time不支持与group by level, group by tag一起使用。
-
-
-### MAX_BY
-
-#### 功能定义
-max_by(x, y): 返回 y 最大时对应时间戳下的 x 值。
- - max_by 必须有两个输入参数 x 和 y。
- - x 和 y 均可以为 time 关键字, max_by(time, x) 返回 x 取最大值时对应的时间戳。
- - 如果 y 最大时对应的时间戳下 x 为 null,则返回 null。
- - 如果 y 可以在多个时间戳下取得最大值,取最大值中最小时间戳对应的 x 值。
- - 与 IoTDB max_value 保持一致,仅支持 INT32、INT64、FLOAT、DOUBLE 作为 y 的输入,支持所有六种类型作为 x
的输入。
- - x, y 的输入均不允许为具体数值。
-
-
-#### 语法
-```sql
-select max_by(x, y) from root.sg
-select max_by(time, x) from root.sg
-```
-
-#### 使用示例
-
-##### 原始数据
-```sql
-IoTDB> select * from root.test
-+-----------------------------+-----------+-----------+
-| Time|root.test.a|root.test.b|
-+-----------------------------+-----------+-----------+
-|1970-01-01T08:00:00.001+08:00| 1.0| 10.0|
-|1970-01-01T08:00:00.002+08:00| 2.0| 10.0|
-|1970-01-01T08:00:00.003+08:00| 3.0| 10.0|
-|1970-01-01T08:00:00.004+08:00| 10.0| 10.0|
-|1970-01-01T08:00:00.005+08:00| 10.0| 12.0|
-|1970-01-01T08:00:00.006+08:00| 6.0| 6.0|
-+-----------------------------+-----------+-----------+
-```
-##### 查询示例
-查询最大值对应的时间戳:
-```sql
-IoTDB> select max_by(time, a), max_value(a) from root.test
-+-------------------------+------------------------+
-|max_by(Time, root.test.a)| max_value(root.test.a)|
-+-------------------------+------------------------+
-| 4| 10.0|
-+-------------------------+------------------------+
-```
-
-求 a 最大时对应的 b 值:
-```sql
-IoTDB> select max_by(b, a) from root.test
-+--------------------------------+
-|max_by(root.test.b, root.test.a)|
-+--------------------------------+
-| 10.0|
-+--------------------------------+
-```
-
-结合表达式使用:
-```sql
-IoTDB> select max_by(b + 1, a * 2) from root.test
-+----------------------------------------+
-|max_by(root.test.b + 1, root.test.a * 2)|
-+----------------------------------------+
-| 11.0|
-+----------------------------------------+
-```
-
-结合 group by time 子句使用:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms)
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-
-结合 having 子句使用:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) having
max_by(b, a) > 4.0
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-结合 order by 子句使用:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) order by time
desc
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-```
-
-
<!--
Licensed to the Apache Software Foundation (ASF) under one
diff --git a/src/zh/UserGuide/Master/User-Manual/Operator-and-Expression.md
b/src/zh/UserGuide/Master/User-Manual/Operator-and-Expression.md
index 79f39ae..3ff9f86 100644
--- a/src/zh/UserGuide/Master/User-Manual/Operator-and-Expression.md
+++ b/src/zh/UserGuide/Master/User-Manual/Operator-and-Expression.md
@@ -89,20 +89,18 @@ OR, |, ||
### 聚合函数
-| 函数名 | 功能描述
| 允许的输入类型 | 输出类型 |
-|-------------|----------------------------------------------------------------------------|
------------------------ | -------------- |
-| SUM | 求和。
| INT32 INT64 FLOAT DOUBLE | DOUBLE |
-| COUNT | 计算数据点数。
| 所有类型 | INT |
-| AVG | 求平均值。
| INT32 INT64 FLOAT DOUBLE | DOUBLE |
-| EXTREME | 求具有最大绝对值的值。如果正值和负值的最大绝对值相等,则返回正值。
| INT32 INT64 FLOAT DOUBLE | 与输入类型一致 |
-| MAX_VALUE | 求最大值。
| INT32 INT64 FLOAT DOUBLE | 与输入类型一致 |
-| MIN_VALUE | 求最小值。
| INT32 INT64 FLOAT DOUBLE | 与输入类型一致 |
-| FIRST_VALUE | 求时间戳最小的值。
| 所有类型 | 与输入类型一致 |
-| LAST_VALUE | 求时间戳最大的值。
| 所有类型 | 与输入类型一致 |
-| MAX_TIME | 求最大时间戳。
| 所有类型 | Timestamp |
-| MIN_TIME | 求最小时间戳。
| 所有类型 | Timestamp |
-| MAX_BY | MAX_BY(x, y) 求二元输入 x 和 y 在 y 最大时对应的 x 的值。MAX_BY(time, x) 返回 x
取最大值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE | 与第一个输入
x 的数据类型一致 |
-| MIN_BY | MIN_BY(x, y) 求二元输入 x 和 y 在 y 最小时对应的 x 的值。MIN_BY(time, x) 返回 x
取最小值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE | 与第一个输入
x 的数据类型一致 |
+| 函数名 | 功能描述 |
允许的输入类型 | 输出类型 |
+| ----------- | ------------------------------------------------------------ |
------------------------ | -------------- |
+| SUM | 求和。 |
INT32 INT64 FLOAT DOUBLE | DOUBLE |
+| COUNT | 计算数据点数。 | 所有类型
| INT |
+| AVG | 求平均值。 |
INT32 INT64 FLOAT DOUBLE | DOUBLE |
+| EXTREME | 求具有最大绝对值的值。如果正值和负值的最大绝对值相等,则返回正值。 | INT32 INT64 FLOAT DOUBLE |
与输入类型一致 |
+| MAX_VALUE | 求最大值。 |
INT32 INT64 FLOAT DOUBLE | 与输入类型一致 |
+| MIN_VALUE | 求最小值。 |
INT32 INT64 FLOAT DOUBLE | 与输入类型一致 |
+| FIRST_VALUE | 求时间戳最小的值。 | 所有类型
| 与输入类型一致 |
+| LAST_VALUE | 求时间戳最大的值。 | 所有类型
| 与输入类型一致 |
+| MAX_TIME | 求最大时间戳。 | 所有类型
| Timestamp |
+| MIN_TIME | 求最小时间戳。 | 所有类型
| Timestamp |
详细说明及示例见文档 [聚合函数](../Reference/Function-and-Expression.md#聚合函数)。
diff --git a/src/zh/UserGuide/latest/Reference/Function-and-Expression.md
b/src/zh/UserGuide/latest/Reference/Function-and-Expression.md
index aeb74e6..6b126e5 100644
--- a/src/zh/UserGuide/latest/Reference/Function-and-Expression.md
+++ b/src/zh/UserGuide/latest/Reference/Function-and-Expression.md
@@ -45,8 +45,6 @@ IoTDB 支持的聚合函数如下:
| TIME_DURATION | 求某一列最大一个不为NULL的值所在时间戳与最小一个不为NULL的值所在时间戳的时间戳差
| 所有类型 | 无
| INT64 |
| MODE | 求众数。注意:<br>1.输入序列的不同值个数过多时会有内存异常风险;
<br>2.如果所有元素出现的频次相同,即没有众数,则返回对应时间戳最小的值; <br>3.如果有多个众数,则返回对应时间戳最小的众数。 | 所有类型
| 无
|
与输入类型一致 |
| COUNT_TIME | 查询结果集的时间戳的数量。与 align by device 搭配使用时,得到的结果是每个设备的结果集的时间戳的数量。
| 所有类型,输入参数只能为* | 无 |
INT64 |
-| MAX_BY | MAX_BY(x, y) 求二元输入 x 和 y 在 y 最大时对应的 x 的值。MAX_BY(time, x) 返回
x 取最大值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是
INT32 INT64 FLOAT DOUBLE | 无 | 与第一个输入 x 的数据类型一致 |
-| MIN_BY | MIN_BY(x, y) 求二元输入 x 和 y 在 y 最小时对应的 x 的值。MIN_BY(time, x) 返回
x 取最小值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是
INT32 INT64 FLOAT DOUBLE | 无 | 与第一个输入 x 的数据类型一致 |
### COUNT_IF
@@ -278,104 +276,6 @@ select count_time(*) from root.db.** group by([0, 10),
2ms) align by device
> 3. having语句里不支持使用count_time, 使用count_time聚合函数时不支持使用having语句。
> 4. count_time不支持与group by level, group by tag一起使用。
-### MAX_BY
-
-#### 功能定义
-max_by(x, y): 返回 y 最大时对应时间戳下的 x 值。
-- max_by 必须有两个输入参数 x 和 y。
-- x 和 y 均可以为 time 关键字, max_by(time, x) 返回 x 取最大值时对应的时间戳。
-- 如果 y 最大时对应的时间戳下 x 为 null,则返回 null。
-- 如果 y 可以在多个时间戳下取得最大值,取最大值中最小时间戳对应的 x 值。
-- 与 IoTDB max_value 保持一致,仅支持 INT32、INT64、FLOAT、DOUBLE 作为 y 的输入,支持所有六种类型作为 x
的输入。
-- x, y 的输入均不允许为具体数值。
-
-
-#### 语法
-```sql
-select max_by(x, y) from root.sg
-select max_by(time, x) from root.sg
-```
-
-#### 使用示例
-
-##### 原始数据
-```sql
-IoTDB> select * from root.test
-+-----------------------------+-----------+-----------+
-| Time|root.test.a|root.test.b|
-+-----------------------------+-----------+-----------+
-|1970-01-01T08:00:00.001+08:00| 1.0| 10.0|
-|1970-01-01T08:00:00.002+08:00| 2.0| 10.0|
-|1970-01-01T08:00:00.003+08:00| 3.0| 10.0|
-|1970-01-01T08:00:00.004+08:00| 10.0| 10.0|
-|1970-01-01T08:00:00.005+08:00| 10.0| 12.0|
-|1970-01-01T08:00:00.006+08:00| 6.0| 6.0|
-+-----------------------------+-----------+-----------+
-```
-##### 查询示例
-查询最大值对应的时间戳:
-```sql
-IoTDB> select max_by(time, a), max_value(a) from root.test
-+-------------------------+------------------------+
-|max_by(Time, root.test.a)| max_value(root.test.a)|
-+-------------------------+------------------------+
-| 4| 10.0|
-+-------------------------+------------------------+
-```
-
-求 a 最大时对应的 b 值:
-```sql
-IoTDB> select max_by(b, a) from root.test
-+--------------------------------+
-|max_by(root.test.b, root.test.a)|
-+--------------------------------+
-| 10.0|
-+--------------------------------+
-```
-
-结合表达式使用:
-```sql
-IoTDB> select max_by(b + 1, a * 2) from root.test
-+----------------------------------------+
-|max_by(root.test.b + 1, root.test.a * 2)|
-+----------------------------------------+
-| 11.0|
-+----------------------------------------+
-```
-
-结合 group by time 子句使用:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms)
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-
-结合 having 子句使用:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) having
max_by(b, a) > 4.0
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-```
-结合 order by 子句使用:
-```sql
-IoTDB> select max_by(b, a) from root.test group by ([0,7),4ms) order by time
desc
-+-----------------------------+--------------------------------+
-| Time|max_by(root.test.b, root.test.a)|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.004+08:00| 10.0|
-+-----------------------------+--------------------------------+
-|1970-01-01T08:00:00.000+08:00| 3.0|
-+-----------------------------+--------------------------------+
-```
-
<!--
Licensed to the Apache Software Foundation (ASF) under one
diff --git a/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md
b/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md
index 57cb255..3ff9f86 100644
--- a/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md
+++ b/src/zh/UserGuide/latest/User-Manual/Operator-and-Expression.md
@@ -101,8 +101,6 @@ OR, |, ||
| LAST_VALUE | 求时间戳最大的值。 | 所有类型
| 与输入类型一致 |
| MAX_TIME | 求最大时间戳。 | 所有类型
| Timestamp |
| MIN_TIME | 求最小时间戳。 | 所有类型
| Timestamp |
-| MAX_BY | MAX_BY(x, y) 求二元输入 x 和 y 在 y 最大时对应的 x 的值。MAX_BY(time, x) 返回 x
取最大值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE | 与第一个输入
x 的数据类型一致 |
-| MIN_BY | MIN_BY(x, y) 求二元输入 x 和 y 在 y 最小时对应的 x 的值。MIN_BY(time, x) 返回 x
取最小值时对应的时间戳。 | 第一个输入 x 可以是任意类型,第二个输入 y 只能是 INT32 INT64 FLOAT DOUBLE | 与第一个输入
x 的数据类型一致 |
详细说明及示例见文档 [聚合函数](../Reference/Function-and-Expression.md#聚合函数)。