mysql DATEDIFF() 、IFNULL(p1,p2)函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/insis_mo/article/details/79565389

1.定义和用法
MySQL DATEDIFF() 函数返回两个日期之间的天数。

语法
DATEDIFF(date1,date2)
date1 和 date2 参数是合法的日期或日期/时间表达式。

注释:只有值的日期部分参与计算。
实例
例子 1
使用如下 SELECT 语句:

SELECT DATEDIFF('2018-12-30','2018-12-29') AS DiffDate
结果:

DiffDate 
1

例子 2
使用如下 SELECT 语句:

SELECT DATEDIFF('2018-12-29','2018-12-30') AS DiffDate
结果:

DiffDate 
-1

以上就是MySQL DATEDIFF()语法介绍。、

二:IFNULL(p1,p2)函数:

Mybatis中IFNULL(p1,p2)函数怎么用? 
首先看没有IFNULL的查询:

2.1源代码:

select md.valueofdouble, md.periodcode
from meas_data md
WHERE objectcode="YQ"
AND datatime="2017-5-25 00:00:00"
AND measurementcode="PI_DRFDL"
  • 1
  • 2
  • 3
  • 4
  • 5

2.2.截图:

这里写图片描述

3.1源代码:

select md.valueofdouble, IFNULL(md.periodcode,0)
from meas_data md
WHERE objectcode="YQ"
AND datatime="2017-5-25 00:00:00"
AND measurementcode="PI_DRFDL"
  • 1
  • 2
  • 3
  • 4
  • 5

3.2截图:

这里写图片描述

4.总结:

1、IFNULL(P1,P2)如果如果P1不为空,则返回值为P1;P1为NULL,则返回为P2;P2有点类似替补球员; 
2、注意,IFNULL只是针对局部字段的替换;如果整个结果查出来都是空,则不能使用IFNULL(P1,P2)

4.1源码:

select md.valueofdouble, md.periodcode
from meas_data md
WHERE objectcode="YQ"
AND datatime="2017-5-25 00:00:01"
AND measurementcode="PI_DRFDL"
  • 1
  • 2
  • 3
  • 4
  • 5

4.2截图:

这里写图片描述


4.3源码:

select md.valueofdouble, IFNULL(md.periodcode,0)
from meas_data md
WHERE objectcode="YQ"
AND datatime="2017-5-25 00:00:01"
AND measurementcode="PI_DRFDL"
  • 1
  • 2
  • 3
  • 4
  • 5

4.4截图:

这里写图片描述



猜你喜欢

转载自blog.csdn.net/insis_mo/article/details/79565389