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

代码如下

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

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

代码如下

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

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

代码如下

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

你还可以这样写:

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

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

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

代码如下

mysql> SELECT something FROM table

WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30;

DAYOFWEEK(date)

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

代码如下

mysql> select DAYOFWEEK('1998-02-03');

-> 3

WEEKDAY(date)

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

代码如下

mysql> select WEEKDAY('1997-10-04 22:23:00');

-> 5

mysql> select WEEKDAY('1997-11-05');

-> 2

DAYOFMONTH(date)

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

代码如下

mysql> select DAYOFMONTH('1998-02-03');

-> 3

DAYOFYEAR(date)

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

代码如下

mysql> select DAYOFYEAR('1998-02-03');

-> 34

MONTH(date)

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

代码如下

mysql> select MONTH('1998-02-03');

-> 2

DAYNAME(date)

返回date的星期名字。

代码如下

mysql> select DAYNAME("1998-02-05");

-> 'Thursday'

MONTHNAME(date)

返回date的月份名字。

代码如下

mysql> select MONTHNAME("1998-02-05");

-> 'February'

QUARTER(date)

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

代码如下

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

-> 2

总结

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

本文标题: 详解Mysql中日期比较大小的方法

本文地址: http://www.cppcns.com/shujuku/mysql/225704.html

mysql 日期比较_详解Mysql中日期比较大小的方法相关推荐

  1. mysql sql组合_详解mysql 组合查询

    使用UNION 多数SQL查询都只包含一个或多个表中返回数据的单条SELECT语句.MySQL也允许执行多个查询(多条SELECT语句),并将结果作为单个查询结果集返回.这些组合查询通常称为并(uni ...

  2. mysql 数据分组_详解MySQL 数据分组

    创建分组 分组是在select语句中的group by 子句中建立的. 例: select vend_id, count(*) as num_prods from products group by ...

  3. java mysql 自动提交_详解MySQL与Spring的自动提交(autocommit)

    1 MySQL的autocommit设置 MySQL默认是开启自动提交的,即每一条DML(增删改)语句都会被作为一个单独的事务进行隐式提交.如果修改为关闭状态,则执行DML语句之后要手动提交 才能生效 ...

  4. mysql 事务 for update,mysql事务锁_详解mysql 锁表 for update

    摘要 腾兴网为您分享:详解mysql 锁表 for update,智慧农业,真还赚,悦读小说,学习帮等软件知识,以及电池管家,三国群英传3,userland,运满满货主版,王者荣耀,简单3d动画,嘉丽 ...

  5. mysql重做日志_详解MySQL 重做日志(redo log)与回滚日志(undo logo)

    前言: 前面文章讲述了 MySQL 系统中常见的几种日志,其实还有事务相关日志 redo log 和 undo log 没有介绍.相对于其他几种日志而言, redo log 和 undo log 是更 ...

  6. mysql 获取当前日期_详解mysql 获取当前日期及格式化

    本篇文章主要介绍了mysql 获取当前日期及格式化,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. MySQL 获取当前日期及日期格式 获取系统日期: NOW() 格式化日期: DATE_FORM ...

  7. mysql function函数_详解MySQL如何按表创建千万级的压测数据

    概述 有时我们要对系统做压测,或者数据库压力测试,这时候需要对某些表插入几百万或者上千万数据,下面介绍下怎么利用MySQL循环和存储过程对特定表的创建千万行数据. 1.准备测试表 CREATE TAB ...

  8. mysql 参照完整性规则_详解mysql数据库审计特点、实现方案及审计插件部署演示...

    概述 数据库审计(简称DBAudit)能够实时记录网络上的数据库活动,对数据库操作进行细粒度审计的合规性管理,对数据库遭受到的风险行为进行告警,对攻击行为进行阻断.它通过对用户访问数据库行为的记录.分 ...

  9. mysql 闪电存储_详解MySQL中EXPLAIN解释命令

    explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 使用方法,在select语句前加上explain就可以了: 如: expla ...

最新文章

  1. parseInt和parseFloat(转换成数字,提取成数字)?
  2. Spring boot actuator端点启用和暴露
  3. 【UVA - 1335】Beijing Guards (贪心,二分)
  4. WAP技术入门(下)(转)
  5. 《SVN宇宙版教程》:第七章 Subclipse更新与深度
  6. 关于如何查找NXP S32K1xx系列单片机的封装信息和引脚定义
  7. iOS14:AirPods Auto Switching
  8. 安卓MediaCodec编码aac
  9. JavaScript--键盘控制div移动
  10. [Games101] Lecture 03-04 Transformation
  11. 最佳平方逼近 matlab,最佳平方逼近的Matlab
  12. 多少天计算机通知用户更改密码,win10系统怎么设置电脑定期强制提醒用户更改登录密码...
  13. C语言#include的用法
  14. 安卓培训价格!半路出家Android程序员看我轻松逆袭!深度好文
  15. bim计算机工程师考试,BIM工程师怎么报考?
  16. 【高胜寒碎碎念】为什么有人愿意花两万块钱去参加IT培训学习?
  17. ORBSLAM3编译生成与应用
  18. 飞凌嵌入式基于i.MX6UL平台实现无线地磁车辆检测网关
  19. 卡尔曼滤波的推导过程详解
  20. 如何带领团队?各位指点江山吧!

热门文章

  1. 网络字体反爬之pyspider爬取起点中文小说
  2. 深入理解WebView
  3. 年龄到底怎么算才对_人的年龄怎么计算
  4. 基于关联规则与可平面图的商品摆放规划-----实验报告
  5. 在Win10平台上搭建AI训练(英伟达GPU加速)环境
  6. 吴昊品游戏核心算法 Round 9 —— 正统黑白棋AI(博弈树)
  7. Win10链接XP共享文件夹
  8. 嗨播总是显示与服务器断开连接,嗨播直播常见问题一览
  9. 常见的RC是什么意思
  10. Lua脚本快速上手(附示例程序代码)