`

mysql查询时间语句大全

阅读更多

本示例使用mysql5.0

1.准备好表

INSERT INTO a
   (`id`, `password`, `startTime`)
VALUES
   ('11', 'bb', "2010-11-29 11:09:55");

INSERT INTO a
   (`id`, `password`, `startTime`)
VALUES
   ('12', '5566', "2010-12-15 11:10:11");

INSERT INTO a
   (`id`, `password`, `startTime`)
VALUES
   ('13', '222', "2008-12-28 11:34:23");

 

2.查询某年某月某日

 select * from a where  date_format(startTime, '%Y-%m-%d ')= '2010-12-15 '

3.查询最近一天(包括昨天和今天):

select * from a where to_days(startTime) = to_days(now());


select * from a where date(startTime) = curdate();

select * from a where to_days(now())-to_days(startTime)<=1

 

4.查询最近一周:

select * from a where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(startTime);

select * from a where to_days(now())-to_days(startTime)<=7

5.查询最近一个月:

select * from a where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(startTime);

6.查询两个日期之间的语句

select * from a where startTime >'2010-05-31 12:12:12 ' and startTime <'2010-11-09 02:02:02'

 

下面是操作时间函数:

当前时间
  • NOW()  
  • SYSDATE()
  • CURRENT_DATE  以'YYYY-MM-DD'或YYYYMMDD格式返回今天日期值,取决于函数是在一个字符串还是数字上下文被使用。  
    •       mysql> select CURDATE(); -> '1997-12-15'  
    •       mysql> select CURDATE() + 0;  -> 19971215 
  • CURRENT_TIME  以'HH:MM:SS'或HHMMSS格式返回当前时间值,取决于函数是在一个字符串还是在数字的上下文被使用。  
    •       mysql> select CURTIME(); -> '23:50:26'  
    •       mysql> select CURTIME() + 0;  -> 235026 
  • CURRENT_TIMESTAMP  以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回当前的日期和时间,取决于函数是在一个字符串还是在数字的上下文被使用。  
    •       mysql> select NOW();-> '1997-12-15 23:50:26'  
    •       mysql> select NOW() + 0;  -> 19971215235026 
  
时间格式
  • DATE_FORMAT(date,format) 根据format字符串格式化date值。
  • TIME_FORMAT(time,format)  根据format字符串格式化time值。format字符串只能包含处理小时、分钟和秒的那些格式修饰符。其他修饰符产生一个NULL值或0。
  •  
    •    mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');  
    •             -> 'Saturday October 1997'  
    •       mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');  
    •             -> '22:23:00'  
    •       mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%D %y %a %d %m %b %j');  
    •             -> '4th 97 Sat 04 10 Oct 277'  
    •       mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%H %k %I %r %T %S %w');  
    •             -> '22 22 10 10:23:00 PM 22:23:00 00 6'  
  • 下列修饰符可以被用在format字符串中,所有的其他字符不做解释被复制到结果中。  
    •   %M 月名字(January……December)  
    •   %W 星期名字(Sunday……Saturday)  
    •   %D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)  
    •   %Y 年, 数字, 4 位  
    •   %y 年, 数字, 2 位  
    •   %a 缩写的星期名字(Sun……Sat)  
    •   %d 月份中的天数, 数字(00……31)  
    •   %e 月份中的天数, 数字(0……31)  
    •   %m 月, 数字(01……12)  
    •   %c 月, 数字(1……12)  
    •   %b 缩写的月份名字(Jan……Dec)  
    •   %j 一年中的天数(001……366)  
    •   %H 小时(00……23)  
    •   %k 小时(0……23)  
    •   %h 小时(01……12)  
    •   %I 小时(01……12)  
    •   %l 小时(1……12)  
    •   %i 分钟, 数字(00……59)  
    •   %r 时间,12 小时(hh:mm:ss [AP]M)  
    •   %T 时间,24 小时(hh:mm:ss)  
    •   %S 秒(00……59)  
    •   %s 秒(00……59)  
    •   %p AM或PM  
    •   %w 一个星期中的天数(0=Sunday ……6=Saturday )  
    •   %U 星期(0……52), 这里星期天是星期的第一天  
    •   %u 星期(0……52), 这里星期一是星期的第一天  
    •   %% 一个文字“%”。 

DAY
  • TO_DAYS(date) 给出一个日期date,返回一个天数(从0年的天数)。
    •       mysql> select TO_DAYS('1997-10-07'); -> 729669 
  • FROM_DAYS(N)  给出一个天数N,返回一个DATE值。
    •       mysql> select FROM_DAYS(729669); -> '1997-10-07'
  • DAYOFWEEK(date)  返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。  
  • WEEKDAY(date)  返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。  
  • DAYOFMONTH(date)   返回date的月份中日期,在1到31范围内。  
  • DAYOFYEAR(date)    返回date在一年中的日数, 在1到366范围内。  
  • MONTH(date)    返回date的月份,范围1到12。  
  • DAYNAME(date)   返回date的星期名字。  
  • MONTHNAME(date)   返回date的月份名字。  
  • QUARTER(date)    返回date一年中的季度,范围1到4。  
  • WEEK(date),WEEK(date,first)  对于星期天是一周的第一天的地方,有一个单个参数,返回date的周数,范围在0到52。2个参数形式WEEK()允许你指定星期是否开始于星期天或星期一。如果第二个参数是0,星期从星期天开始,如果第二个参数是1,从星期一开始。  
  • YEAR(date)  返回date的年份,范围在1000到9999。  
  • HOUR(time)  返回time的小时,范围是0到23。  
  • MINUTE(time)  返回time的分钟,范围是0到59。  
  • SECOND(time)  回来time的秒数,范围是0到59。  
SECOND
  • SEC_TO_TIME(seconds) 返回seconds参数,变换成小时、分钟和秒,值以'HH:MM:SS'或HHMMSS格式化,取决于函数是在一个字符串还是在数字上下文中被使用。  
    •       mysql> select SEC_TO_TIME(2378);-> '00:39:38'  
    •       mysql> select SEC_TO_TIME(2378) + 0;-> 3938 
  • TIME_TO_SEC(time) 返回time参数,转换成秒。  
    •       mysql> select TIME_TO_SEC('22:23:00');-> 80580  

TIMESTAMP   
  • UNIX_TIMESTAMP(date)  如果没有参数调用,返回一个Unix时间戳记(从'1970-01-01 00:00:00'GMT开始的秒数)。如果UNIX_TIMESTAMP()用一个date参数被调用,它返回从'1970-01-01 00:00:00' GMT开始的秒数值。date可以是一个DATE字符串、一个DATETIME字符串、一个TIMESTAMP或以YYMMDD或YYYYMMDD格式的本地时间的一个数字。  
    •       mysql> select UNIX_TIMESTAMP('1997-10-04 22:23:00'); -> 875996580  
          *当UNIX_TIMESTAMP被用于一个TIMESTAMP列,函数将直接接受值,没有隐含的“string-to-unix-       timestamp”变换。 
  • FROM_UNIXTIME(unix_timestamp)  以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回unix_timestamp参数所表示的值,取决于函数是在一个字符串还是或数字上下文中被使用。  
    •       mysql> select FROM_UNIXTIME(875996580); -> '1997-10-04 22:23:00'  
    •       mysql> select FROM_UNIXTIME(875996580) + 0;  -> 19971004222300 
  • FROM_UNIXTIME(unix_timestamp,format)  返回表示 Unix 时间标记的一个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条目同样的修饰符。  
    •       mysql> select FROM_UNIXTIME(UNIX_TIMESTAMP(),'%Y %D %M %h:%i:%s %x'); 
    •             -> '1997 23rd December 03:43:30 x'

 

 

 

 

0
0
分享到:
评论

相关推荐

    MySql 按时间段查询数据方法(实例说明)

    MySQL作为常用的关系型数据库管理系统,其提供了丰富的函数和操作符来处理时间相关的数据查询。本文将详细说明如何使用MySQL进行按时间段查询数据的方法,包括操作示例和说明。 首先,我们必须了解MySQL中处理时间...

    mysql常用性能查询语句

    MySQL 常用性能查询语句 MySQL 是一种关系型数据库管理系统,提供了多种方式来查询和优化数据库性能。本文总结了一些常用的 MySQL 性能查询语句,帮助数据库管理员和开发人员更好地了解和优化数据库性能。 1. 查看...

    Mysql 时间模糊查询

    本文将详细介绍几种常见的MySQL时间模糊查询方法,并通过实例加以说明。 #### 二、模糊查询的基本概念 模糊查询是指不精确地匹配查询条件的一种查询方式。在MySQL中,模糊查询主要通过`LIKE`关键字实现。例如,...

    MySQL5.7时间范围查询性能测试

    本文主要探讨的是在MySQL 5.7版本中进行时间范围查询的性能测试,这对于数据库优化和应用程序的高效运行具有重要意义。 首先,我们要理解MySQL 5.7在时间类型处理上的改进。MySQL支持多种时间类型,如DATE、TIME、...

    MySQL语法语句大全MySQL语法语句大全

    MySQL是一种广泛使用的开源关系型数据库管理系统,其语法丰富多样,涵盖了数据查询、数据操作、数据库设计、事务处理、存储过程等多个方面。以下是一份全面的MySQL语法语句概述: 一、数据定义(DDL - Data ...

    MySQL查询语句及MySQL8.0新特性窗口函数

    MySQL 是一款广泛使用的开源关系型数据库管理系统,其查询语句是数据库操作的核心部分。在MySQL中,函数的使用极大地丰富了查询和数据处理的可能性。本文将详细讲解MySQL的一些常用函数以及MySQL 8.0引入的新特性...

    设计高效合理的MySQL查询语句

    在设计高效合理的MySQL查询语句时,关注查询性能至关重要,因为查询操作在数据库操作中占据了主要部分,而SELECT语句的执行成本最高。随着数据量的增加,全表扫描会导致查询时间显著增长,可能需要数十分钟甚至数...

    MySQL数据库查询优化

    从MySQL实践看,怎么利用物理查询优化技术对SQL查询语句调优? 本节预计会承接第9课的部分内容。 预计时间1小时 第11课 MySQL索引的利用、优化 从MySQL索引的角度出发,看各种SQL查询语句的优化怎么进行?(以前都...

    Effective MySQL之SQL语句最优化.pdf

    尽管如此,我将基于标题和描述中提供的关键词“Effective MySQL之SQL语句最优化”来构建知识点。 1. SQL语句最优化的概念:在数据库管理中,对SQL语句进行优化是提高数据库性能的关键环节。最优化的SQL语句能够在...

    MYSQL查询操作教程

    MYSQL 查询操作也可以使用 INTO 语句将查询结果制表,例如: ```sql SELECT 学生表.姓名,监护人表.电话 INTO 电话表 FROM 学生表,监护人表 WHERE 学生表.学号=监护人表.学号 ``` 这将将查询结果制成新表“电话表”...

    mysql查询语句汇总.zip

    这份"mysql查询语句汇总.zip"包含了丰富的学习资源,包括"mysql查询语句汇总.pdf"和"项目说明.pdf"两个文件,旨在帮助用户深入理解和掌握MySQL查询的各个方面。 首先,"mysql查询语句汇总.pdf"很可能是一个详细的...

    mysql查询分析器

    MySQL查询分析器通常具备多种功能,包括编写、测试、优化以及监控SQL语句,以提升数据库系统的整体效率。 在MySQL的世界里,查询分析器扮演着至关重要的角色。它允许用户输入SQL命令,然后通过解析这些命令来与...

    mysql中取系统当前时间,当前日期方便查询判定的代码

    获取当前时间的MySql时间函数处理MySql时间日期的函数有很多,下面为您介绍的就是用于获取当前时间的MySql时间函数,如果您对此感兴趣的话,不妨一看下面为您介绍的MySql时间函数用于获取当前时间,该MySql时间函数...

    mysql 查询本周、上周、本月

    根据提供的标题、描述以及部分代码内容,我们可以总结出以下几个MySQL查询相关的知识点: ...通过上述知识点的学习,可以有效地在MySQL数据库中查询指定时间段内的数据,这对于数据分析、报表生成等场景非常有用。

    MySql高级Sql查询

    当我们谈论“MySQL高级SQL查询”时,通常是指那些超越基础SELECT、INSERT、UPDATE和DELETE语句的复杂查询技巧。这些技巧包括联接操作、子查询、聚合函数、窗口函数、集合操作、存储过程和触发器等。本资料包中的" ...

    使用LabVIEW操作ACCESS、MySQL、SQL server数据库实现按照时间段查询数据

    需要注意的是,针对不同的数据库系统(如MySQL和SQL Server),SQL语句的语法可能会有所不同,特别是对于日期时间的处理和特定功能的使用。在实际应用中,需要根据目标数据库的特点调整SQL语句。 通过学习和实践...

    设计高效合理的MySQL查询语句讲解

    在数据库操作中,查询操作占据了极大的比例,特别是对于大型数据集,如银行账户信息等,优化查询语句可以显著减少查询时间,从数十分钟甚至数小时缩短至几分钟。这不仅提高了用户体验,也极大地节省了计算资源。 ##...

    mysql语句转postgres的工具

    在这个过程中,`MysqlToPostgresUtil`工具扮演着重要的角色,它能帮助我们将MySQL的DDL(Data Definition Language)语句转换为PostgreSQL兼容的格式,从而简化迁移过程。 MySQL和PostgreSQL虽然都是关系型数据库...

    2.mysql查询性能优化1

    优化查询语句可以减少查询时间、提高查询效率。MySQL 提供了多种查询优化技术,包括使用 UNION 优化、使用子查询优化、使用 JOIN 优化等。 6.3 MySQL 查询优化工具 MySQL 提供了多种查询优化工具,包括 EXPLAIN、...

    mysql语句集合包括模糊查询索引函数

    在这个“mysql语句集合包括模糊查询索引函数”中,我们将深入探讨SQL中的关键概念,特别是与模糊查询、索引和函数相关的知识。 首先,SQL语句主要分为四大类:SELECT(查询)、INSERT(插入)、UPDATE(更新)和...

Global site tag (gtag.js) - Google Analytics