📜  postgresql 从日期时间获取日期 - SQL (1)

📅  最后修改于: 2023-12-03 14:45:35.590000             🧑  作者: Mango

PostgreSQL 从日期时间获取日期 - SQL

在 PostgreSQL 中,可以使用日期时间函数来从日期/时间戳中提取日期部分。常见的日期时间函数有 date_trunc、to_char 和 extract。

date_trunc 函数

date_trunc 函数可以将日期/时间戳截断到给定精度。例如,以下查询返回当前日期的年份:

SELECT date_trunc('year', CURRENT_DATE);

返回结果如下:

date_trunc
------------
2021-01-01

以下是 date_trunc 函数可用的精度参数:

  • microsecond
  • millisecond
  • second
  • minute
  • hour
  • day
  • week
  • month
  • quarter
  • year
  • decade
  • century
  • millennium
to_char 函数

to_char 函数可以将日期/时间戳格式化为字符串。例如,以下查询返回当前日期的年份:

SELECT to_char(CURRENT_DATE, 'YYYY');

返回结果如下:

to_char
-------
2021

以下是 to_char 函数可用的格式化参数:

  • YYYY: 四位数年份
  • YY: 两位数年份
  • MM: 月份(01-12)
  • MON: 缩写月份(Jan-Dec)
  • MONTH: 月份全称(January-December)
  • DD: 日期(01-31)
  • DDD: 年中天数(001-366)
  • DAY: 缩写星期几(Sun-Sat)
  • Day: 全称星期几(Sunday-Saturday)
  • HH: 小时(00-12)
  • HH12: 小时(01-12)
  • HH24: 小时(00-23)
  • MI: 分钟(00-59)
  • SS: 秒(00-59)
  • AM: 上午(AM/PM)
extract 函数

extract 函数可以从日期/时间戳中提取指定部分的值。例如,以下查询返回当前日期的年份:

SELECT extract(year FROM CURRENT_DATE);

返回结果如下:

 date_part
-----------
      2021

以下是 extract 函数可用的提取参数:

  • year
  • quarter
  • month
  • week
  • day
  • hour
  • minute
  • second
  • timezone_hour
  • timezone_minute

以上就是 PostgreSQL 中从日期时间获取日期的一些常用方法。在实际项目开发中,可以根据具体需求选择合适的方法来处理日期时间数据。