码迷,mamicode.com
首页 > 数据库 > 详细

MYSQL计算两个字段日期差

时间:2016-10-25 11:40:56      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:amp   time   tle   when   字符串转换   interval   ace   转换   net   

一,TIMESTAMPDIFF

语法:

TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)。

说明:

返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。该参数必须是以下值的其中一个:

 

  1. FRAC_SECOND。表示间隔是毫秒
  2. SECOND。秒
  3. MINUTE。分钟
  4. HOUR。小时
  5. DAY。天
  6. WEEK。星期
  7. MONTH。月
  8. QUARTER。季度
  9. YEAR。年

二、str_to_date 

       MySQL内置函数,在mysql里面利用str_to_date()把字符串转换为日期。

示例:分隔符一致,年月日要一致

 select str_to_date(‘2008-4-2 15:3:28‘,‘%Y-%m-%d %H:%i:%s‘);

select str_to_date(‘2008-08-09 08:9:30‘, ‘%Y-%m-%d %h:%i:%s‘);

 

 

例 :以下计算两个字段的时间差 (年) 注:第二个时间字段时间不用带时间格式 

SELECT user_id AS 姓名 ,
(CASE WHEN sex=0 THEN ‘女‘ ELSE ‘男‘ END) AS 性别,
mobileno AS 电话,
startdate AS 入职日期,
enddate AS 到职日期,
(CASE WHEN enddate>0 THEN
TIMESTAMPDIFF(YEAR,STR_TO_DATE(startdate,‘%Y-%m-%d %Y‘),enddate)
ELSE
TIMESTAMPDIFF(YEAR,STR_TO_DATE(startdate,‘%Y-%m-%d %Y‘),LOCALTIME()) END )AS 工龄,
curstar AS 星级,
curshopname AS 门店,
strength AS 优势 ,
weakness AS 劣势,
improve AS 进步点 ,
memo AS 备注,
(CASE WHEN enddate>0 THEN ‘离职‘ ELSE ‘在职‘ END ) AS 状态

FROM ft_sales

MYSQL计算两个字段日期差

标签:amp   time   tle   when   字符串转换   interval   ace   转换   net   

原文地址:http://www.cnblogs.com/juneraid/p/5996087.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!