Add timestampadd/timestampdiff function (#2725)
This commit is contained in:
@ -0,0 +1,42 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
|
||||
# hour
|
||||
## description
|
||||
### Syntax
|
||||
|
||||
`INT HOUR(DATETIME date)`
|
||||
|
||||
|
||||
获得日期中的小时的信息,返回值范围从0-23。
|
||||
|
||||
参数为Date或者Datetime类型
|
||||
|
||||
## example
|
||||
|
||||
```
|
||||
mysql> select hour('2018-12-31 23:59:59');
|
||||
+-----------------------------+
|
||||
| hour('2018-12-31 23:59:59') |
|
||||
+-----------------------------+
|
||||
| 23 |
|
||||
+-----------------------------+
|
||||
```
|
||||
##keyword
|
||||
HOUR
|
||||
@ -0,0 +1,42 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
|
||||
# minute
|
||||
## description
|
||||
### Syntax
|
||||
|
||||
`INT MINUTE(DATETIME date)`
|
||||
|
||||
|
||||
获得日期中的分钟的信息,返回值范围从0-59。
|
||||
|
||||
参数为Date或者Datetime类型
|
||||
|
||||
## example
|
||||
|
||||
```
|
||||
mysql> select minute('2018-12-31 23:59:59');
|
||||
+-----------------------------+
|
||||
| minute('2018-12-31 23:59:59') |
|
||||
+-----------------------------+
|
||||
| 59 |
|
||||
+-----------------------------+
|
||||
```
|
||||
##keyword
|
||||
MINUTE
|
||||
@ -0,0 +1,42 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
|
||||
# second
|
||||
## description
|
||||
### Syntax
|
||||
|
||||
`INT SECOND(DATETIME date)`
|
||||
|
||||
|
||||
获得日期中的秒的信息,返回值范围从0-59。
|
||||
|
||||
参数为Date或者Datetime类型
|
||||
|
||||
## example
|
||||
|
||||
```
|
||||
mysql> select second('2018-12-31 23:59:59');
|
||||
+-----------------------------+
|
||||
| second('2018-12-31 23:59:59') |
|
||||
+-----------------------------+
|
||||
| 59 |
|
||||
+-----------------------------+
|
||||
```
|
||||
##keyword
|
||||
SECOND
|
||||
@ -0,0 +1,52 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
|
||||
# timestampadd
|
||||
## description
|
||||
### Syntax
|
||||
|
||||
`DATETIME TIMESTAMPADD(unit, interval, DATETIME datetime_expr)`
|
||||
|
||||
|
||||
将整数表达式间隔添加到日期或日期时间表达式datetime_expr中。
|
||||
|
||||
interval的单位由unit参数给出,它应该是下列值之一:
|
||||
|
||||
SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, or YEAR。
|
||||
|
||||
## example
|
||||
|
||||
```
|
||||
|
||||
mysql> SELECT TIMESTAMPADD(MINUTE,1,'2019-01-02');
|
||||
+------------------------------------------------+
|
||||
| timestampadd(MINUTE, 1, '2019-01-02 00:00:00') |
|
||||
+------------------------------------------------+
|
||||
| 2019-01-02 00:01:00 |
|
||||
+------------------------------------------------+
|
||||
|
||||
mysql> SELECT TIMESTAMPADD(WEEK,1,'2019-01-02');
|
||||
+----------------------------------------------+
|
||||
| timestampadd(WEEK, 1, '2019-01-02 00:00:00') |
|
||||
+----------------------------------------------+
|
||||
| 2019-01-09 00:00:00 |
|
||||
+----------------------------------------------+
|
||||
```
|
||||
##keyword
|
||||
TIMESTAMPADD
|
||||
@ -0,0 +1,60 @@
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
|
||||
# timestampdiff
|
||||
## description
|
||||
### Syntax
|
||||
|
||||
`INT TIMESTAMPDIFF(unit,DATETIME datetime_expr1, DATETIME datetime_expr2)`
|
||||
|
||||
返回datetime_expr2−datetime_expr1,其中datetime_expr1和datetime_expr2是日期或日期时间表达式。
|
||||
|
||||
结果(整数)的单位由unit参数给出。interval的单位由unit参数给出,它应该是下列值之一:
|
||||
|
||||
SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, or YEAR。
|
||||
|
||||
## example
|
||||
|
||||
```
|
||||
|
||||
MySQL> SELECT TIMESTAMPDIFF(MONTH,'2003-02-01','2003-05-01');
|
||||
+--------------------------------------------------------------------+
|
||||
| timestampdiff(MONTH, '2003-02-01 00:00:00', '2003-05-01 00:00:00') |
|
||||
+--------------------------------------------------------------------+
|
||||
| 3 |
|
||||
+--------------------------------------------------------------------+
|
||||
|
||||
MySQL> SELECT TIMESTAMPDIFF(YEAR,'2002-05-01','2001-01-01');
|
||||
+-------------------------------------------------------------------+
|
||||
| timestampdiff(YEAR, '2002-05-01 00:00:00', '2001-01-01 00:00:00') |
|
||||
+-------------------------------------------------------------------+
|
||||
| -1 |
|
||||
+-------------------------------------------------------------------+
|
||||
|
||||
|
||||
MySQL> SELECT TIMESTAMPDIFF(MINUTE,'2003-02-01','2003-05-01 12:05:55');
|
||||
+---------------------------------------------------------------------+
|
||||
| timestampdiff(MINUTE, '2003-02-01 00:00:00', '2003-05-01 12:05:55') |
|
||||
+---------------------------------------------------------------------+
|
||||
| 128885 |
|
||||
+---------------------------------------------------------------------+
|
||||
|
||||
```
|
||||
##keyword
|
||||
TIMESTAMPDIFF
|
||||
Reference in New Issue
Block a user