0 0

MySQL中和日期相关的一个查询问题3

       比如,数据库中有如下记录:
                 广东   揭阳  0.05%   2   2012-01-29  
              广东   汕头  0.05%   2   2012-01-31
              广东   汕尾  0.05%   2   2012-01-31
              广西   桂林  0.1%    1   2012-02-01
              广西   南宁  0.1%    1   2012-02-01

          要求是提出各省各市距离当前日期最近的一天的记录,即除去了广东,揭阳,2012-01-29的那条记录,我现在很想知道这个要求能用sql语句实现么?如果能应该怎么写呢?因为如果要求符合的日期不一定是一天,那一天的记录也不一定是几条。
             
 
2012年2月02日 14:50

4个答案 按时间排序 按投票排序

0 0

补充:
刚才那个sql语句没有考虑查看的是各个省份的时间比较
现在修改如下:
假设此数据表的表名为t_province,日期字段名为t_date,省份字段名为t_name,则查询语句如下:
SELECT t.date,t.name FROM t_provincet  LEFT JOIN  
(SELECT MIN(TIMESTAMPDIFF(DAY,a.date,CURRENT_DATE())) AS mina,a.name  AS sname FROM t_provincea GROUP BY a.name) AS aa
ON
TIMESTAMPDIFF(DAY,date,CURRENT_DATE()) = aa.mina WHERE t.name = aa.sname
此代码已测试验证,可达到楼主的要求,希望有用

2012年2月02日 18:03
0 0

假设此数据表的表名为t_province,日期字段名为t_date,省份字段名为t_name,则查询语句如下:
SELECT t.t_date,t.t_name FROM t_province t WHERE TIMESTAMPDIFF(DAY,t_date,CURRENT_DATE())=
(SELECT MIN(TIMESTAMPDIFF(DAY,t_date,CURRENT_DATE())) FROM t_province);
此语句以作测试没问题

2012年2月02日 16:23
0 0

SELECT TIMESTAMPDIFF(DAY,CURDATE(),日期字段名) AS cz FROM 表名 ORDER BY cz ASC
按升序排取第一条记录。
TIMESTAMPDIFF()mysq日期时间比较函数。
最好是把日期精确到分钟,这样多少能避免出现多条记录。
推荐你看看mysql日期和时间函数。

2012年2月02日 15:58
0 0

可以按省份和日期排序查出来,然后放到list中。从里面可以取出 每个省最接近当前日期的记录。

2012年2月02日 15:41

相关推荐

    MySQL日期查询[定义].pdf

    MySQL 日期查询是 MySQL 中的一种查询方式,用于处理日期和时间相关的数据。它提供了多种函数来操作日期和时间,包括日期查询、日期计算、日期比较等。 日期查询函数 MySQL 提供了多种日期查询函数,用于查询日期...

    Mysql 时间模糊查询

    除了上述提到的方法,MySQL还提供了一系列日期和时间相关的函数,可以更加灵活地处理各种时间相关的查询需求。 ##### 1. DATE_FORMAT函数 DATE_FORMAT函数用于格式化日期时间,常用于日期时间的比较。例如,查询...

    MySql用DATE_FORMAT截取DateTime字段的日期值

    您可能感兴趣的文章:MySQL中日期比较时遇到的编码问题解决办法PHP以及MYSQL日期比较方法mysql 获取当前日期函数及时间格式化参数详解mysql unix准换时间格式查找指定日期数据代码MySql日期查询语句详解深入mysql ...

    MySQL时间日期相关函数

    MySQL时间日期相关函数是数据库操作中的重要组成部分,用于处理与日期和时间相关的数据。在MySQL中,这些函数提供了丰富的功能,包括获取当前日期和时间、格式化日期、时间间隔计算以及进行日期时间的比较等。以下是...

    MYSQL 日期函数大全

    MYSQL 日期函数大全,供大家一起共同分享学习。

    mysql 树形结构查询

    mysql 树形结构查询 MySQL 树形结构查询是指使用存储过程来实现 MySQL 数据库中的树形结构查询。这种查询方式可以高效地查询树形结构的数据,并且可以根据需要设置递归深度。 MySQL 中的树形结构查询可以使用存储...

    mysql日期操作技巧

    mysql日期操作技巧mysql日期操作技巧mysql日期操作技巧mysql日期操作技巧mysql日期操作技巧mysql日期操作技巧mysql日期操作技巧mysql日期操作技巧

    45-MySQL单表2000万数据查询慢解决方案1

    我们的解决方案思路很简单, 每7天某个时间点触发Event,执行一个存储过程,先取出最早的分区,drop,然后创建一个最大分区号+1,日期也+7的分区。 技术要点 * 使用分区来减少数据查询时间 * 使用时间触发器来实现...

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

    类似地,若要查询上一个月的数据,可以在 `MONTH()` 函数中减去1,表示当前月份的前一个月。以下是查询上一个月数据的SQL语句示例: ```sql SELECT * FROM `table` WHERE MONTH(FROM_UNIXTIME(时间字段)) = MONTH...

    MySQL查询把多列返回结果集拼装成一个字段

    mysql中有种可以通过join相关操作进行表与表之间的方式查询不同结果集,但是在一对多的情况下,关键查询的结果是多条的.例如:班级和学习的关系,我想很直观的看到班级和学生的情况,列表显示出班级的信息和班级的男生...

    mysql如何查询日期与时间

    前言: 在项目开发中,一些业务表字段经常使用日期和时间...处理日期和时间字段的函数有很多,有的经常会在查询中使用到,下面介绍下几个相关函数的使用方法。 CURDATE 和 CURRENT_DATE 两个函数作用相同,返回当前

    sql查询优化(提高MySQL数据库查询效率的几个技巧)

    在 MySQL 数据库中,查询优化是一个非常重要的方面。在实际应用中,高效的查询可以提高整个系统的性能和响应速度。下面我们将介绍几个提高 MySQL 数据库查询效率的技巧。 使用 Statement 进行绑定查询 使用 ...

    MySQL 多表关联一对多查询实现取最新一条数据的方法示例

    本文实例讲述了MySQL 多表关联一对多查询实现取最新一条数据的方法。分享给大家供大家参考,具体如下: MySQL 多表关联一对多查询取最新的一条数据 遇到的问题 多表关联一对多查询取最新的一条数据,数据出现重复 ...

    MySQL日期时间函数大全

    date 是一个 DATETIME 或 DATE 值,expr 是一个对 date 进行加减法的一个表达式字符串,type 指明表达式 expr 应该如何被解释。 示例: ```sql mysql> select DATE_ADD('1998-02-03', INTERVAL 1 DAY); -> '1998-02...

    mysql备份脚本-按日期进行备份,并进行压缩

    - `MD C:\Apache2.2\htdocs\backup\mysqlbackup\%DATE%`:创建一个名为当前日期的目录用于存放备份文件。 4. **切换目录至MySQL安装目录**: - `cd c:\`:切换到C盘根目录。 - `cd "MySQL Server 5.0"`:进入...

    Mysql查询流程分析

    MySQL查询流程是指当用户向MySQL服务器发送一个查询请求时,MySQL内部执行的一系列操作过程。 #### 一、MySQL查询流程概述 MySQL查询流程主要包括以下几个步骤: 1. **客户端/服务器通信**:客户端通过网络与...

    mysql 日期和时间格式转换实现语句

    这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql> SELECT something FROM table WHERE TO_DAYS(NOW()) – TO_DAYS(date_col) <= 30; DAYOFWEEK(date) 返回日期...

    Mysql中日期的查询.docx

    通过对以上内容的学习,我们不仅了解了如何在MySQL中进行基本的日期查询,还深入探索了更复杂的日期处理技巧,如日期范围查询、日期加减操作以及时区转换等。这些技能对于日常数据库管理和数据分析工作至关重要,...

    mysql的日期和时间函数.rar

    MySQL是世界上最受欢迎的关系型数据库管理...同时,下载说明.txt可能包含了获取更多资源和理解教程的指引,而“A5下载- 更全的站长资源平台.url”则是一个链接,可能指向了包含更多数据库教程和其他相关资源的网站。

    mysql CPU高负载问题排查

     在某个新服务器上,新建了一个MySQL的实例,该服务器上面只有MySQL这一个进程,但是CPU的负载却居高不下,使用top命令查询的结果如下: [dba_mysql@dba-mysql ~]$ top top - 17:12:44 up 104 days, 20 min, 2 ...

Global site tag (gtag.js) - Google Analytics