PostgreSQL 类型转换

PostgreSQL 类型转换,第1张

概述PostgreSQL 类型转换     类似Oracle ,PostgreSQL也有强大的类型转换函数, 下面仅举两个类型转换例子。        --1 例子 postgres=# select 1/4;  ?column?  ----------         0 (1 row)         在PG里如果想做除法并想保留小数,用上面的方法却行不通,因为"/" 运算结果为取整,并 且会截掉 Postgresql 类型转换

类似Oracle ,Postgresql也有强大的类型转换函数,下面仅举两个类型转换例子。


--1 例子
postgres=# select 1/4;
?column?
----------
0
(1 row)

在PG里如果想做除法并想保留小数,用上面的方法却行不通,因为"/" 运算结果为取整,并
且会截掉小数部分。

--2 类型转换
postgres=# select round(1::numeric/4::numeric,2);
round
-------
0.25
(1 row)

备注:类型转换后,就能保留小数部分了。


--3 也可以通过 cast 函数进行转换
postgres=# select round( cast ( 1 as numeric )/ cast( 4 as numeric),2);
round
-------
0.25
(1 row)


--4 关于 cast 函数的用法
postgres=# SELECT substr(CAST (1234 AS text),3,1);
substr
--------
3
(1 row)


--5 附: Postgresql 类型转换函数

Function Return Type Description Example


to_char
(timestamp,text

)


text
convert time stamp to string
to_char(current_timestamp,'HH12:MI:SS')

to_char
(
interval,text
)

text
convert interval to string
to_char(interval '15h2m12s','HH24:MI:SS')

to_char
(
int,text
)

text
convert integer to string
to_char(125,'999')


to_char
(
double

precision
,text
)


text
convert real/double precision to string
to_char(125.8::real,'999D9')

to_char
(
numeric,text
)

text
convert numeric to string
to_char(-125.8,'999D99S')

to_date
(text,text
)

date
convert string to date
to_date('05Dec2000','DDMonYYYY')

to_number
(
text,text
)

numeric
convert string to numeric
to_number('12,454.8-','99G999D9S')

to_timestamp
(
text,text
)

timestamp with time zone
convert string to time stamp
to_timestamp('05Dec2000','DDMonYYYY')

to_timestamp
(
double precision
)

timestamp with time zone
convert Unix epoch to time stamp to_timestamp(1284352323)
总结

以上是内存溢出为你收集整理的PostgreSQL 类型转换全部内容,希望文章能够帮你解决PostgreSQL 类型转换所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1182857.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存