You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PostgreSQL中查询日期等于当前日期的数据库记录

在PostgreSQL中筛选日期等于当前日期的记录

直接可用的解决方案

你给出的查询语句已经准确命中需求啦!针对葡萄牙语命名的data字段(对应英文的date字段),要筛选出日期等于当前日期的记录,这个写法完全正确:

SELECT id, data, dia, mes, ano, fornecedor, doc, valor_líquido, total 
FROM public.fluxo_pagamentos 
WHERE data = current_date;

关键细节说明

  • current_date是PostgreSQL的内置函数,会返回当前会话时区下的纯日期值(格式为YYYY-MM-DD),完美匹配data字段的日期类型。
  • 要是你的data字段存储的是timestamp/timestamp with time zone类型(包含具体时间时分秒),直接用= current_date可能会漏掉那些时间部分不为0的记录。这种情况下推荐用范围查询,既准确又能利用字段上的索引:
-- 适配timestamp类型字段的优化写法
SELECT id, data, dia, mes, ano, fornecedor, doc, valor_líquido, total 
FROM public.fluxo_pagamentos 
WHERE data >= current_date 
  AND data < current_date + INTERVAL '1 day';

额外提示

注意确认会话时区和数据库存储的日期时区一致,避免因时区偏移导致筛选结果不符合预期。如果需要固定时区查询,可以指定时区,比如:

-- 以巴西圣保罗时区为例
SELECT id, data, dia, mes, ano, fornecedor, doc, valor_líquido, total 
FROM public.fluxo_pagamentos 
WHERE data = current_date AT TIME ZONE 'America/Sao_Paulo';

内容的提问来源于stack exchange,提问作者Leogreen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:09:03