time_format
time_format(time, fmt)
描述:time_format函数将日期参数按照fmt指定的格式转换为字符串。与date_format函数类似,但格式字符串只能包含小时、分钟、秒和微秒的格式说明符,如果包含其他说明符则会返回NULL值或0。
返回值类型:text
示例:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | SELECT time_format('2009-10-04 22:23:00', '%M %D %W'); time_format -------------------- (1 row) SELECT time_format('2021-02-20 08:30:45', '%Y-%m-%d %H:%i:%S'); time_format --------------------- 0000-00-00 08:30:45 (1 row) SELECT time_format('2021-02-20 18:10:15', '%r-%T'); time_format ---------------------- 06:10:15 PM-18:10:15 (1 row) | 
 
 
    time_format仅支持时间相关的格式输出(%f、%H、%h、%I、%i、%k、%l、%p、%r、%S、%s、%T),不支持日期相关格式,其他情况处理为普通字符。
str_to_date(str, format)
描述:将日期/时间格式的字符串(str),按照所提供的显示格式(format)转换为日期类型的值。
返回值类型:timestamp
示例:
| 1 2 3 4 5 6 7 8 9 10 | SELECT str_to_date('01,5,2021','%d,%m,%Y'); str_to_date --------------------- 2021-05-01 00:00:00 (1 row) SELECT str_to_date('01,5,2021,09,30,17','%d,%m,%Y,%h,%i,%s'); str_to_date --------------------- 2021-05-01 09:30:17 (1 row) | 
适用于str_to_date的格式化输入的格式类型参考表1。这里仅支持“日期”格式、“日期+时间”格式的输入转换,对于仅“时间”格式的输入场景请使用str_to_time。
str_to_time(str, format)
描述:将时间格式的字符串(str),按照所提供的显示格式(format)转换为时间类型的值。
返回值类型:time
示例:
| 1 2 3 4 5 | SELECT str_to_time('09:30:17','%h:%i:%s'); str_to_time ------------- 09:30:17 (1 row) | 
适用于str_to_time的格式化输入的格式类型参考表1,这里仅支持“时间”格式的输入转换,对于“日期”格式、“日期+时间”格式的输入场景请使用str_to_date。
week(date[, mode])
描述:根据模式返回指定日期时间所处年份中对应的周数,默认模式为0。
返回值类型:integer
| 模式 | 一周的第一天 | 周数范围 | 第一周的判断规则 | 
|---|---|---|---|
| 0 | 星期日 | 0-53 | 元旦后的第一个星期日所在周 | 
| 1 | 星期一 | 0-53 | 元旦后有四天或者更多天所在周 | 
| 2 | 星期日 | 1-53 | 元旦后的第一个星期日所在周 | 
| 3 | 星期一 | 1-53 | 元旦后有四天或者更多天所在周 | 
| 4 | 星期日 | 0-53 | 元旦后有四天或者更多天所在周 | 
| 5 | 星期一 | 0-53 | 元旦后的第一个星期一所在周 | 
| 6 | 星期日 | 1-53 | 元旦后有四天或者更多天所在周 | 
| 7 | 星期一 | 1-53 | 元旦后的第一个星期一所在周 | 
示例:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | select week('2018-01-01'); week ------ 0 (1 row) select week('2018-01-01', 0); week ------ 0 (1 row) select week('2020-12-31', 1); week ------ 53 (1 row) select week('2020-12-31', 5); week ------ 52 (1 row) | 
weekday(date)
描述:返回给定日期date对应的星期索引,星期一作为一周的开始日。
取值范围:0~6
返回值类型:integer
示例:
| 1 2 3 4 5 | select weekday('2020-11-06'); weekday --------- 4 (1 row) | 
weekofyear(date)
描述:返回给定日期date所在周在本年中对应的周数,取值范围为[1, 53],等价于week(date, 3)。
返回值类型:integer
示例:
| 1 2 3 4 5 | select weekofyear('2020-12-30'); weekofyear ------------ 53 (1 row) | 
year(date)
描述:获取时间日期date所处的年份
返回值类型:integer
示例:
| 1 2 3 4 5 | select year('2020-11-13'); year ------ 2020 (1 row) | 
yearweek(date[, mode])
描述:返回给定日期date在本年中对应的年份和周数,周数范围为[1, 53]。
返回值类型:integer
示例:
| 1 2 3 4 5 6 7 8 9 10 11 | select yearweek('2019-12-31'); yearweek ---------- 201952 (1 row) select yearweek('2019-1-1'); yearweek ---------- 201852 (1 row) | 
 
  