北京SEO

sql中常用的日期计算语句

2019/10/10/17:35:01  阅读:3092  来源:谷歌SEO算法  标签: 自学SEO

在mysql中对于日期计算有大量的函数,如有DATE_FORMAT、UNIX_TIMESTAMP、date等等相关的日期函数,下面我把常用的几种mysql日期操作函数总结一下,欢迎各位同学参考。

1.计算年龄

如果你有一个人的生日而需要计算这个人的年龄,将下列语句中@dateofbirth替换为生日即可,代码如下:

SELECT DATE_FORMAT (FROM_DAYS (TO_DAYS (now ()) - TO_DAYS (@dateofbirth)), '%Y') + 0;

2.计算两个日期的差值

计算两个日期的分,秒,小时和天数的差值,如果dt1和dt2的的格式是‘yyyy-mm-dd hh:mm:ss’,那么两个日期之间的秒数差值就是,代码如下:

UNIX_TIMESTAMP ( dt2 ) - UNIX_TIMESTAMP ( dt1 )

3.显示出现了N次的栏目的值,代码如下:

  1. SELECTid
  2. FROMtbl
  3. GROUPBYid
  4. HAVINGCOUNT(*)=N;

4.计算两个日期之间的工作日

计算两个日期之间的工作日的最简单方法是是一个含有d日期栏目和另一个标定了在已知年份中所有日期是否为休息日的栏目的日历表,然后下面的查询就是找到在Start和Stop两个日期之间所有的工作日,代码如下:

  1. SELECTCOUNT(*)
  2. FROMcalendar
  3. WHEREdBETWEENStartANDStop
  4. ANDDAYOFWEEK(d)NOTIN(1,7)
  5. ANDholiday=0;

5.unix时间戳比较

Mysql内置函数:UNIX_TIMESTAMP()

若无参数调用,则默认返回一个 从 '1970-01-01 00:00:00' 到当前时刻的秒数(无符号整数),若用date 来调用 unix_timestamp(),它会返回从 '1970-01-01 00:00:00' 到 date表示的时刻为止的秒数;date 可以是一个 date 字符串、一个 datetime字符串、一个 timestamp或一个当地时间的yymmdd 或yyymmdd格式的数字.

则sql语句可以这样写:

  1. selectid,title,content,addtimefromtablename_tblwhereUNIX_TIMESTAMP(addtime)>=UNIX_TIMESTAMP()-10800andUNIX_TIMESTAMP(addtime)<=UNIX_TIMESTAMP()//10800为3小时的秒数。
  2. //也可以这样写
  3. select*fromtbwherec>date_format('2007-07-06','%Y%m%d')andc<=date_format('2007-07-09','%Y%m%d');
  4. //phpfensi.com
  5. select*fromtbwherec>date('2007-07-07')andc<date('2007-07-09')

广告内容

sql中常用的日期计算语句 sql中常用的日期计算语句 sql中常用的日期计算语句

相关阅读

热门评论

萧红SEO 萧红SEO

SEO爱好者,分享SEO经验~

总篇数212

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法