内置函数
当前版本:v3.0, 更新时间:2020-09-16
1**. now函数**
获取服务器当前时间的内置函数now,在查询或插入数据时可以使用now函数获取服务器当前时间,精确到秒,例如以下示例:
insert into tab01(devid, tstamp, ...) values(1, now(), ...)
2.datetimeadd函数
计算一个时间与另一个数值相加返回另一个时间。第一个参数为DateTime值,第二个参数是表示微秒的数。
例如:得到当前时间前1分钟(1分钟为60000000微秒)
SELECT datetimeadd(now(), -60000000)
为了方便做时间运算可以选择使用时间符号 秒(s),分钟(m),小时(h),如下所示:
SELECT datetimeadd(now(), -60s),datetimeadd(now(), -1m), datetimeadd(now(), 1h)
3.datetimediff
计算两个时间差,结果为一个整数表示两个时间差的微秒数。例如:
SELECT datetimediff(datetimeadd(now(),1m), now())
4.datetimefloor
时间值的向下取整,取整单位为:秒(second)、分钟(minute)、小时(hour)、天(day),如下所示:
SELECT datetimefloor(now(), 'second'),datetimefloor(now(), 'hour')
注意:以天为单位进行取整时,使用的是服务器时区。
5.datetimeceil
时间值的向上取整,取整单位为:秒(second)、分钟(minute)、小时(hour)、天(day),如下所示:
SELECT datetimeceil(now(), 'second'),datetimefloor(now(), 'day')
注意:以天为单位进行取整时,使用的是服务器时区。
6.add函数
加法函数,支持tinyint, smallint, int, bigint, float, double数据类型,如下所示:
SELECT add(5,7.5)
7.sub函数
减法函数,支持tinyint, smallint, int, bigint, float, double数据类型,如下所示:
SELECT sub(12,3.2)
8.mul函数
乘法函数,支持tinyint, smallint, int, bigint, float,double数据类型,如下所示:
SELECT mul(5,8)
9.div函数
除法函数,支持tinyint, smallint, int, bigint, float,double数据类型,除数为0或null时,结果为null,示例如下:
SELECT div(5, 8.0)
10.mod函数
求模函数,支持tinyint, smallint, int, bigint 数据类型,示例如下:
SELECT mod(5,8)
11.if函数
条件函数,需要三个参数,第一个参数为条件,若条件为真返回第二个参数,若条件为假返回第三个参数,示例如下:
SELECT if(5 > 8, 'true', 'false')
第二个和第三个参数必须具备同样的数据类型。
12.abs函数
绝对值函数,支持tinyint,smallint,int,bigint,float,double数据类型,示例如下:
SELECT abs(-5),abs(5)