MySQL时间日期查询相关函数与方法

转载 2011年12月20日 10:46:21

MySQL应用中,日期与查询是非常普遍的。比如要查某天、某个星期、或者某个月内的数据,查询两个日期之间的天数差,查询某天是星期几等等。下面就介绍一下相关的MySQL时间与日期函数,与它们的具体使用方法。

NOW() 函数

MYSQL 有没有像 MSSQL 的 getdate() 函数?有,就是 NOW()。

1 mysql> SELECT now();
2 +---------------------+
3 | now()               |
4 +---------------------+
5 | 2011-10-27 09:49:42 |
6 +---------------------+
7 1 row in set

NOW() 函数返回当前的日期和时间。

DATEDIFF() 函数

DATEDIFF() 函数返回两个日期之间的天数。

DATEDIFF(expr,expr2)

DATEDIFF() 返回起始时间 expr和结束时间expr2之间的天数。Expr和expr2为日期或 date-and-time 表达式。计算中只用到这些值的日期部分。

1 mysql> SELECT DATEDIFF('2011-10-27','2011-09-05')AS DiffDate;
2 +----------+
3 | DiffDate |
4 +----------+
5 |       52 |
6 +----------+
7 1 row in set

查询一周内的数据

01 mysql> SELECT title FROMtable WHERE datediff(FROM_UNIXTIME(date),now()) > -7;
02 +------------------------------------+
03 | title                         |
04 +------------------------------------+
05 | 什么是面向服务架构SOA              |
06 | 从菜鸟到编程高手的学习与认知历程   |
07 | JavaScript去除空格trim()的原生实现 |
08 | C语言程序在内存中的运行情况        |
09 | 为什么说Lisp到现在还很先进         |
10 | JavaScript截取中英文字符串         |
11 | 谈谈Javascript的匿名函数           |
12 | 程序员需要具备的一些基本技能       |
13 | 美国社会的一些潜规则               |
14 | 二叉搜索树的一些相关算法介绍       |
15 | JQuery仿淘宝滚动加载图片           |
16 | 收藏一些规范化输入输出的PHP函数    |
17 | 趣谈编程语言结构——函数             |
18 | CSS设计一个三列布局的页面          |
19 | 关于Android应用apk的程序签名       |
20 | JavaScript模拟打字效果             |
21 | 欧几里德算法(辗转相处法)练手     |
22 | JavaScript身份证号码有效性验证     |
23 | JavaScript对iframe的DOM操作        |
24 | 如何处理JSON中的特殊字符           |
25 | 一份腾讯2011笔试题                 |
26 | PHP如何实现异步数据调用            |
27 | 网站运营需要了解的一些规律         |
28 | 勤于思考才能善于架构               |
29 +------------------------------------+
30 24 rowsin set

同样查询一个月,一年,任意天数都可以这么使用。

查询当天则可以这么写:

1 mysql> SELECT title FROMtable WHERE datediff(FROM_UNIXTIME(date),now()) >= 0;
2 +----------------------------+
3 | post_title                 |
4 +----------------------------+
5 | 网站运营需要了解的一些规律 |
6 | 勤于思考才能善于架构       |
7 +----------------------------+
8 2 rowsin set

查询某天是星期几

DAYNAME(date)

返回date对应的工作日名称。

1 mysql> SELECT DAYNAME( NOW() );
2 +------------------+
3 | DAYNAME( NOW() ) |
4 +------------------+
5 | Thursday         |
6 +------------------+
7 1 row in set

查询该日期是当周第几天则这么写:

1 mysql> SELECT DAYOFWEEK( NOW() );
2 +--------------------+
3 | DAYOFWEEK( NOW() ) |
4 +--------------------+
5 |                  5 |
6 +--------------------+
7 1 row in set

返回date (1 = 周日, 2 = 周一, ..., 7 = 周六)对应的工作日索引。这些索引值符合 ODBC标准。


相关文章推荐

3.mysql的中文问题,database级操作,表级操作,数据CRUD,分组操作,时间和日期,字符串相关函数,表的约束

 1 连接MYSQL服务器:mysql–uroot –p123456 查看中文问题 show variables like 'character%'; ...

mysql时间日期函数

  • 2012年07月19日 08:49
  • 7KB
  • 下载

PHP日期与时间相关的函数

PHP日期和时间 1.验证日期。 checkdate()如果提供的日期有效,返回TRUE,否则返回FALSE。 bool bheckdate(int month,int day,int...

MySQL日期时间函数大全

  • 2013年07月19日 10:32
  • 34KB
  • 下载

mysql的时间和日期函数

  • 2010年12月08日 11:17
  • 9KB
  • 下载

DB2数据库时间日期相关SQL函数

db2日期和时间函数常用知识汇总 2012-09-10 00:46 来源:博客园 作者:wanghonghu 字号:T|T [摘要]本文介绍db2日期和时间函数常用知识,包括DAYOFWEEK、...

mysql 日期函数相关操作

  • 2010年05月13日 14:18
  • 9KB
  • 下载

Vim技能修炼教程(15) - 时间和日期相关函数

Vimscript武器库前面我们走马观花地将Vimscript的大致语法过了一遍。下面我们开始深入看一下Vimscript都给我们准备了哪些武器。如果只用这些武器就够了,那么就太好了,只用Vimscr...
  • lusing
  • lusing
  • 2017年07月18日 17:11
  • 173
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MySQL时间日期查询相关函数与方法
举报原因:
原因补充:

(最多只允许输入30个字)