当前位置: 首页 > 编程笔记 >

从具有日期值的列中检索单个MySQL查询中的MIN和MAX日期

壤驷阳波
2023-03-14
本文向大家介绍从具有日期值的列中检索单个MySQL查询中的MIN和MAX日期,包括了从具有日期值的列中检索单个MySQL查询中的MIN和MAX日期的使用技巧和注意事项,需要的朋友参考一下

为此,您可以使用聚合函数MIN()MAX()。让我们首先创建一个表-

mysql> create table DemoTable(AdmissionDate date);

使用插入命令在表中插入一些记录-

mysql> insert into DemoTable values('2019-01-21');
mysql> insert into DemoTable values('2018-12-31');
mysql> insert into DemoTable values('2016-11-01');
mysql> insert into DemoTable values('2019-04-11');
mysql> insert into DemoTable values('2016-02-01');

使用select语句显示表中的所有记录-

mysql> select *from DemoTable;

这将产生以下输出-

+---------------+
| AdmissionDate |
+---------------+
| 2019-01-21    |
| 2018-12-31    |
| 2016-11-01    |
| 2019-04-11    |
| 2016-02-01    |
+---------------+
5 rows in set (0.00 sec)

以下是在单个查询中检索MIN和MAX日期的查询-

mysql> select MIN(AdmissionDate) AS MinDate,MAX(AdmissionDate) AS MaxDate from DemoTable;

这将产生以下输出-

+------------+------------+
| MinDate    | MaxDate    |
+------------+------------+
| 2016-02-01 | 2019-04-11 |
+------------+------------+
1 row in set (0.00 sec)
 类似资料:
  • 问题内容: 任何人都可以从官方MySQL文档中澄清这一点 使用索引…查找特定索引列key_col的MIN()或MAX()值。这由预处理器优化,该预处理器检查是否在索引中在key_col之前出现的所有关键部分上使用WHERE key_part_N =常量。在这种情况下,MySQL对每个MIN()或MAX()表达式执行一次键查找,并将其替换为常量。如果所有表达式都用常量替换,查询将立即返回。例如: S

  • 你好,我有两列日期时间的多行,我想获取所有记录的两列之间的最新日期(最高)的行。请查看以下内容: 我想从两列(Date1和Date2)的所有记录中获取最高日期。从上表中,我想要第三行日期,因为这是两列所有记录中的最高日期(2021-06-16 20:04:24)。如果我们在2021-06-16 09:20:41之前更改date1列第3行,那么结果将是第2行,因为在date2中找到了最高日期记录。请

  • 我尝试创建一个查询,显示入住和退房日期之间的可用酒店。此外,当我为特定房间预订时,我将他们的预订列设置为1。这意味着,在现实生活中,当结账日期到来时,触发函数将该预订列设置成0。 如果酒店的所有房间都已预订(预订=1),并且这些房间的签入-退房日期是特定日期(签入-退房输入),则不要将该酒店放在列表中。我的查询不会显示我想要的结果。 查询:输入:国家(状态)、签入和签出。 当我运行查询时,它总是显

  • 我需要激发一个查询来检索from_date的最小值和to_date的最大值。我的数据如下: 但是,当我激发以下查询时: 如您所见,我希望结果中的to_date为NULL。但Max函数不会发现我为空。那么我有什么替代方法使我返回空值呢?此外,to_date列可能不是NULL。在这种情况下,我需要非空的适当日期。谁能帮帮忙吗?

  • 问题内容: 在将其标记为重复之前,请先看一下此SQLFiddle。 我有这个架构: 子查询: 结果: 现在,这里最棘手的部分是此查询的结果: 这是: 应该是这样的: 您认为查询中有什么问题? 问题答案: 而不是您可以简单地使用相同。也可以改用。 输出: 看到这个SQLFiddle 编辑: 如果要使用它,则必须使用如下子查询: 看到这个SQLFiddle 编辑2: 除了在外部查询中使用之外,您也可以

  • 问题内容: 这个问题已经在这里有了答案 : 获取两个日期之间的日期列表 (20个答案) 7年前关闭。 我想通过选择查询将日期列表放在两个日期之间。例如: 如果我给出“ 2012-02-10”和“ 2012-02-15”,则需要结果。 我怎样才能得到? 问题答案: 尝试: -日期范围可长达近300年。 [根据UrvishAtSynapse的建议编辑进行更正。]