服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - 详解Mysql中日期比较大小的方法

详解Mysql中日期比较大小的方法

2020-08-30 15:45WeXio Mysql

这篇文章主要介绍了Mysql中日期比较大小的方法,需要的朋友可以参考下

假如有个表product有个字段add_time,它的数据类型为datetime,有人可能会这样写sql:

 代码如下

?
1
select * from product where add_time = '2013-01-12'

对于这种语句,如果你存储的格式是YY-mm-dd是这样的,那么OK,如果你存储的格式是:2013-01-12 23:23:56这种格式你就悲剧了,这是你就可以使用DATE()函数用来返回日期的部分,所以这条sql应该如下处理:

 代码如下

?
1
select * from product where Date(add_time) = '2013-01-12'

再来一个,如果你要查询2013年1月份加入的产品呢?

 代码如下

?
1
select * from product where date(add_time) between '2013-01-01' and '2013-01-31'

你还可以这样写:

?
1
select * from product where Year(add_time) = 2013 and Month(add_time) = 1

这些你该知道mysql日期函数在对你处理日期比较问题的作用了吧?

其date_col的值是在最后30天以内:

 代码如下

?
1
2
3
mysql> SELECT something FROM table
 WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30;
DAYOFWEEK(date)

返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。

 代码如下

?
1
2
3
mysql> select DAYOFWEEK('1998-02-03');
 -> 3
WEEKDAY(date)

返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。

 代码如下

?
1
2
3
4
5
mysql> select WEEKDAY('1997-10-04 22:23:00');
 -> 5
 mysql> select WEEKDAY('1997-11-05');
 -> 2
DAYOFMONTH(date)

返回date的月份中日期,在1到31范围内。

 代码如下

?
1
2
3
mysql> select DAYOFMONTH('1998-02-03');
 -> 3
DAYOFYEAR(date)

返回date在一年中的日数, 在1到366范围内。

 代码如下

?
1
2
3
mysql> select DAYOFYEAR('1998-02-03');
 -> 34
MONTH(date)

返回date的月份,范围1到12。

 代码如下

?
1
2
3
mysql> select MONTH('1998-02-03');
 -> 2
DAYNAME(date)

返回date的星期名字。

 代码如下

?
1
2
3
mysql> select DAYNAME("1998-02-05");
 -> 'Thursday'
MONTHNAME(date)

返回date的月份名字。

 代码如下

?
1
2
3
mysql> select MONTHNAME("1998-02-05");
 -> 'February'
QUARTER(date)

返回date一年中的季度,范围1到4。

 代码如下

?
1
2
mysql> select QUARTER('98-04-01');
 -> 2

如果大家想对mysql有更加深入系统的学习,可以参阅 MySQL王者晋级之路 这本经典书籍。

总结

以上所述是小编给大家介绍的Mysql中日期比较大小的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://blog.csdn.net/qq2712193/article/details/48766575

延伸 · 阅读

精彩推荐
  • Mysql解决MySQl查询不区分大小写的方法讲解

    解决MySQl查询不区分大小写的方法讲解

    今天小编就为大家分享一篇关于解决MySQl查询不区分大小写的方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起...

    Veir_dev5592019-06-25
  • MysqlMySQL锁的知识点总结

    MySQL锁的知识点总结

    在本篇文章里小编给大家整理了关于MySQL锁的知识点总结以及实例内容,需要的朋友们学习下。...

    别人放弃我坚持吖4362020-12-14
  • Mysqlmysql 不能插入中文问题

    mysql 不能插入中文问题

    当向mysql5.5插入中文时,会出现类似错误 ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column ...

    MYSQL教程网5722019-11-25
  • Mysql浅谈mysql 树形结构表设计与优化

    浅谈mysql 树形结构表设计与优化

    在诸多的管理类,办公类等系统中,树形结构展示随处可见,本文主要介绍了mysql 树形结构表设计与优化,具有一定的参考价值,感兴趣的小伙伴们可以参...

    小码农叔叔5242021-11-16
  • MysqlMySQL数据库varchar的限制规则说明

    MySQL数据库varchar的限制规则说明

    本文我们主要介绍了MySQL数据库中varchar的限制规则,并以一个实际的例子对限制规则进行了说明,希望能够对您有所帮助。 ...

    mysql技术网4192019-11-23
  • MysqlERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event()

    ERROR: Error in Log_event::read_log_event(): read error, data_len: 438, event_type: 2 ...

    MYSQL教程网6402020-03-13
  • MysqlMySQL 数据备份与还原的示例代码

    MySQL 数据备份与还原的示例代码

    这篇文章主要介绍了MySQL 数据备份与还原的相关知识,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...

    逆心2962019-06-23
  • Mysql详解MySQL中的分组查询与连接查询语句

    详解MySQL中的分组查询与连接查询语句

    这篇文章主要介绍了MySQL中的分组查询与连接查询语句,同时还介绍了一些统计函数的用法,需要的朋友可以参考下 ...

    GALAXY_ZMY5432020-06-03