postgres数据库中的数据转换

网友投稿 298 2022-07-27

postgres8.3以后,字段数据之间的默认转换取消了。如果需要进行数据变换的话,在postgres数据库中,我们可以用"::"来进行字段数据的类型转换。实际上"::"是调用CAST函数的。究竟哪些字段之间可以进行数据转换呢?

   这个问题只要研究一下cast函数就能够得到答案。cast函数的信息在系统pg_cast表里面管理。

通过查询我们可以得到现阶段可以转换的类型对照表如下:

源类型            转换目标类型

 

 

int8

int2

int8

int4

int8

float4

int8

float8

int8

numeric

int2

int8

int2

int4

int2

float4

int2

float8

int2

numeric

int4

int8

int4

int2

int4

float4

int4

float8

int4

numeric

float4

int8

float4

int2

float4

int4

float4

float8

float4

numeric

float8

int8

float8

int2

float8

int4

float8

float4

float8

numeric

numeric

int8

numeric

int2

numeric

int4

numeric

float4

numeric

float8

int4

bool

bool

int4

int8

oid

int2

oid

oid

int8

int8

regproc

int2

regproc

regproc

int8

int8

regprocedure

int2

regprocedure

regprocedure

int8

int8

regoper

int2

regoper

regoper

int8

int8

regoperator

int2

regoperator

regoperator

int8

int8

regclass

int2

regclass

regclass

int8

int8

regtype

int2

regtype

regtype

int8

int8

regconfig

int2

regconfig

regconfig

int8

int8

regdictionary

int2

regdictionary

regdictionary

int8

text

regclass

varchar

regclass

bpchar

text

bpchar

varchar

char

text

char

bpchar

char

varchar

name

text

name

bpchar

name

varchar

text

char

bpchar

char

varchar

char

text

name

bpchar

name

varchar

name

char

int4

int4

char

abstime

date

abstime

time

abstime

timestamp

abstime

timestamptz

reltime

interval

date

timestamp

date

timestamptz

time

interval

time

timetz

timestamp

abstime

timestamp

date

timestamp

time

timestamp

timestamptz

timestamptz

abstime

timestamptz

date

timestamptz

time

timestamptz

timestamp

timestamptz

timetz

interval

reltime

interval

time

timetz

time

lseg

point

path

point

path

polygon

box

point

box

lseg

box

polygon

box

circle

polygon

point

polygon

path

polygon

box

polygon

circle

circle

point

circle

box

circle

polygon

inet

cidr

int8

bit

int4

bit

bit

int8

bit

int4

cidr

text

inet

text

bool

text

text

xml

cidr

varchar

inet

varchar

bool

varchar

varchar

xml

cidr

bpchar

inet

bpchar

bool

bpchar

bpchar

xml

bpchar

bpchar

varchar

varchar

time

time

timestamp

timestamp

timestamptz

timestamptz

interval

interval

timetz

timetz

bit

bit

varbit

varbit

numeric

numeric

That which didn't kill me makes me stronger

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:mysql数据库备份和还原(mysql数据库怎么备份还原)
下一篇:sqlserver 数据库里面金额类型为什么不建议用float,实例告诉你为什么不能。
相关文章

 发表评论

暂时没有评论,来抢沙发吧~