PostgreSQL 将月份名称转换为数字
PostgreSQL convert month name to number
我有一个查询 returns 一个字段作为月份和年份 "Nov 2015" 我想获得月份的数字,在这里我必须获得数字为“11”。
您可以使用函数to_timestamp(text, text) 和extract(field from timestamp):
SELECT EXTRACT(MONTH FROM TO_TIMESTAMP("Nov 2015", "Mon YYYY"));
请参阅 to_timestamp and extract
的文档
您可以使用 to_date 函数将特定格式的输入解析为 'real' 日期。然后用这个日期你可以从中提取月份。
select EXTRACT(MONTH FROM to_date('Nov 2015', 'Mon YYYY'))
有关其他日期时间函数等,请参阅 http://www.postgresql.org/docs/current/static/functions-formatting.html for the formatting syntax and http://www.postgresql.org/docs/current/static/functions-datetime.html。
select to_char(to_date('Nov 2015', 'Mon YYYY'), 'mm') month_no
查询可以是
select to_char(to_date(your_date_col, 'Mon YYYY'), 'mm') month_no
from table_name
如果你的日期是时间戳,例如:“2017-01-24 23:00:00-03”(这是带时区的时间戳)
select to_char(your_date, 'MM') from your_table
那么在这种情况下结果将是:“01”
我有一个查询 returns 一个字段作为月份和年份 "Nov 2015" 我想获得月份的数字,在这里我必须获得数字为“11”。
您可以使用函数to_timestamp(text, text) 和extract(field from timestamp):
SELECT EXTRACT(MONTH FROM TO_TIMESTAMP("Nov 2015", "Mon YYYY"));
请参阅 to_timestamp and extract
的文档您可以使用 to_date 函数将特定格式的输入解析为 'real' 日期。然后用这个日期你可以从中提取月份。
select EXTRACT(MONTH FROM to_date('Nov 2015', 'Mon YYYY'))
有关其他日期时间函数等,请参阅 http://www.postgresql.org/docs/current/static/functions-formatting.html for the formatting syntax and http://www.postgresql.org/docs/current/static/functions-datetime.html。
select to_char(to_date('Nov 2015', 'Mon YYYY'), 'mm') month_no
查询可以是
select to_char(to_date(your_date_col, 'Mon YYYY'), 'mm') month_no
from table_name
如果你的日期是时间戳,例如:“2017-01-24 23:00:00-03”(这是带时区的时间戳)
select to_char(your_date, 'MM') from your_table
那么在这种情况下结果将是:“01”