如何编写postgresql查询以从表中仅获取timestamp字段的日期部分

Lin*_*vis 26 sql postgresql

如何编写postgresql查询以从表中仅获取timestamp字段的日期部分

Kon*_*rus 46

select DATE(my_field) from my_table;
Run Code Online (Sandbox Code Playgroud)


pil*_*row 23

您有两个基本选项,每个选项都有许多等效表达式.假设命名了TIMESTAMP字段"ts",您可以提取日期部分:

  • 通过类型转换
    • CAST(ts AS DATE) 符合SQL的语法
    • ts::DATE 历史pg语法
    • DATE(ts) 实际上是一个功能.请注意,根据上面的链接,不推荐使用此语法.
  • 日期/时间功能
    • EXTRACT(YEAR FROM ts)
    • DATE_PART('YEAR', ts)