首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用两个字段查询最近的记录:日期标记和时间戳

使用两个字段查询最近的记录:日期标记和时间戳
EN

Database Administration用户
提问于 2020-05-02 20:09:30
回答 1查看 78关注 0票数 0

我有一张名为“空气质量”的表格,它记录了在那些日子里不同的日子和时间进行的空气质量测量。这些日期/时间戳存储在两个不同的列中: validdate和validtime。我可以查询这两个字段中的任何一个,以便使用以下查询返回最大值:

代码语言:javascript
运行
复制
select * 
from airquality
where validdate = (select max(validdate) from airquality)

这将返回最近一天的正确行(格式:05/02/20)。但是,如何修改此查询以同时检查validtime列(format:16:00)中的最新时间?

我尝试了以下几点:

代码语言:javascript
运行
复制
select * 
from airquality
where validdate = (select max(validdate) from airquality)
and validtime = (select max(validtime) from airquality)

但是这不起作用,因为我可以有05/01/2020的时间戳,而这个时间戳是05/02/2020还没有的。(例如: 05/02/20 16:00 vs 05/01/20 23:00)

我在Postgres 12.2

有什么建议或想法吗?提前谢谢。

EN

回答 1

Database Administration用户

回答已采纳

发布于 2020-05-02 20:40:20

从这两列创建适当的时间戳:

代码语言:javascript
运行
复制
select * 
from airquality
where validdate + validtime  = (select max(validdate + validtime ) from airquality)

这假设validdate是用数据类型date定义的,而validtime是正确定义为time列的。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/266361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档