如何仅从postgres的时间戳列中按日期选择?

时间:2018-11-28 05:56:53

标签: sql postgresql

我有一张桌子。

enter image description here

您可以看到created_date列是时间戳字段。现在选择时,我只考虑日期值。例如,如果我要从今天开始选择行,我想做类似的事情:-

select * from audit_logs where created_date = '2018-11-28';

以上查询返回null。是否可以通过这种方式进行选择?

2 个答案:

答案 0 :(得分:1)

您可以使用date()功能

select * from audit_logs where date(created_date) = '2018-11-28'

答案 1 :(得分:0)

如果您想要更大的灵活性(例如,截断为小时),则可以使用另一种功能date_trunc(text, timestamp)。查看有关所有日期/时间函数的postgres文档(很棒):https://www.postgresql.org/docs/current/functions-datetime.html

请记住,您确实获得了时间戳,而不是日期。