各種數據類型(日期/時間、integer、floating point和numeric)轉換成格式化的字符串以及反過來從格式化的字符串轉換成指定的數據類型。下面列出了這些函數,它們都遵循一個公共的調用習 慣:第一個參數是待格式化的值,而第二個是定義輸出或輸出格式的模板。
函數
|
返回類型
|
描述
|
例子
|
to_char(timestamp, text)
|
text
|
把時間戳轉換成字串
|
to_char(current_timestamp, 'HH12:MI:SS')
|
to_char(interval, text)
|
text
|
把時間間隔轉為字串
|
to_char(interval '15h 2m 12s', 'HH24:MI:SS')
|
to_char(int, text)
|
text
|
把整數轉換成字串
|
to_char(125, '999')
|
to_char(double precision, text)
|
text
|
把實數/雙精度數轉換成字串
|
to_char(125.8::real, '999D9')
|
to_char(numeric, text)
|
text
|
把numeric轉換成字串
|
to_char(-125.8, '999D99S')
|
to_date(text, text)
|
date
|
把字串轉換成日期
|
to_date('05 Dec 2000', 'DD Mon YYYY')
|
to_timestamp(text, text)
|
timestamp
|
把字串轉換成時間戳
|
to_timestamp('05 Dec 2000', 'DD Mon YYYY')
|
to_timestamp(double)
|
timestamp
|
把UNIX紀元轉換成時間戳
|
to_timestamp(200120400)
|
to_number(text, text)
|
numeric
|
把字串轉換成numeric
|
to_number('12,454.8-', '99G999D9S')
|
用於日期/時間格式化的模式:
模式
|
描述
|
HH
|
一天的小時數(01-12)
|
HH12
|
一天的小時數(01-12)
|
HH24
|
一天的小時數(00-23)
|
MI
|
分鍾(00-59)
|
SS
|
秒(00-59)
|
MS
|
毫秒(000-999)
|
US
|
微秒(000000-999999)
|
AM
|
正午標識(大寫)
|
Y,YYY
|
帶逗號的年(4和更多位)
|
YYYY
|
年(4和更多位)
|
YYY
|
年的后三位
|
YY
|
年的后兩位
|
Y
|
年的最后一位
|
MONTH
|
全長大寫月份名(空白填充為9字符)
|
Month
|
全長混合大小寫月份名(空白填充為9字符)
|
month
|
全長小寫月份名(空白填充為9字符)
|
MON
|
大寫縮寫月份名(3字符)
|
Mon
|
縮寫混合大小寫月份名(3字符)
|
mon
|
小寫縮寫月份名(3字符)
|
MM
|
月份號(01-12)
|
DAY
|
全長大寫日期名(空白填充為9字符)
|
Day
|
全長混合大小寫日期名(空白填充為9字符)
|
day
|
全長小寫日期名(空白填充為9字符)
|
DY
|
縮寫大寫日期名(3字符)
|
Dy
|
縮寫混合大小寫日期名(3字符)
|
dy
|
縮寫小寫日期名(3字符)
|
DDD
|
一年里的日子(001-366)
|
DD
|
一個月里的日子(01-31)
|
D
|
一周里的日子(1-7;周日是1)
|
W
|
一個月里的周數(1-5)(第一周從該月第一天開始)
|
WW
|
一年里的周數(1-53)(第一周從該年的第一天開始)
|
下面是PostgreSQL中支持的時間/日期操作符的列表: