当前位置: 首页 > news >正文

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

假如有个表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

相关文章:

  • Java性能优化:Stream如何提高遍历集合效率?
  • SSM岭师旧书回收系统毕业设计-附源码041921
  • Java开发中常用的框架有哪些?
  • 如何快速在线扫描文档?Web TWAIN SDK 教你轻松解决
  • JSONredis
  • 与5G一起过中秋,天涯变咫尺
  • 进入docker容器命令行
  • java实战项目视频,2022年大厂Java高级面试题分享
  • Jira - create project
  • 档案管理学名词解释全集
  • 【比特熊故事汇2.0】|即使每天都是新的探险,他也会快乐Say Hi
  • 多线程之线程的执行顺序
  • <二叉树及模拟实现>——《Data Structure in C Train》
  • 谷粒商城高级篇-全文检索(ElasticSearch)
  • 【Linux】Windows安装VirtualBox虚拟机以及CentOS操作系统
  • Android开源项目规范总结
  • Angularjs之国际化
  • Elasticsearch 参考指南(升级前重新索引)
  • Git同步原始仓库到Fork仓库中
  • JavaScript设计模式之工厂模式
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • Promise面试题,控制异步流程
  • Python 基础起步 (十) 什么叫函数?
  • Shell编程
  • SSH 免密登录
  • Vim Clutch | 面向脚踏板编程……
  • Vue.js-Day01
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 异常机制详解
  • 积累各种好的链接
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​无人机石油管道巡检方案新亮点:灵活准确又高效
  • #stm32整理(一)flash读写
  • (11)MATLAB PCA+SVM 人脸识别
  • (SpringBoot)第二章:Spring创建和使用
  • (SpringBoot)第七章:SpringBoot日志文件
  • (二)正点原子I.MX6ULL u-boot移植
  • (附源码)springboot车辆管理系统 毕业设计 031034
  • (九)信息融合方式简介
  • (推荐)叮当——中文语音对话机器人
  • (转)Google的Objective-C编码规范
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • * 论文笔记 【Wide Deep Learning for Recommender Systems】
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .Net - 类的介绍
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .Net FrameWork总结
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • [ vulhub漏洞复现篇 ] Grafana任意文件读取漏洞CVE-2021-43798
  • []使用 Tortoise SVN 创建 Externals 外部引用目录
  • [BJDCTF 2020]easy_md5
  • [CC2642R1][VSCODE+Embedded IDE+IAR Build+Cortex-Debug] TI CC2642R1基于VsCode的开发环境
  • [C语言]——分支和循环(4)