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

IT人知识库 原文地址:http://www.itpeo.net/12848/396486.html





数据库分页查询方法

可能会有人说这些网上都有,但我的主要目的是把这些知识通过我实际的应用总结归纳一下,以方便大家查询使用。 下面就分别给大家... ...

数据库 SQL千万级数据规模处理概要

1. 数据太多。放在一个表肯定不行。 比如月周期表。一个月1000万,一年就1.2亿,如此累计下去肯定不行的。所以都是基... ...

SQL 优化经验总结34条

(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到左的顺序处理FROM子... ...

sql 插入数据的三种常用方法及小贴士

代码如下:INSERT INTO table1(id, name, address) VALUES(1, ygl, ‘... ...

sql left join 命令详解

给个通俗的解释吧. 例表a aid adate 1 a1 2 a2 3 a3 表b bid bdate 1 b1 2 b... ...

对分区表进行alter-switch时遇到的错误

创建一个和目标表一样定义的表; 在表上加上constraint以确保表的数据在目标分区里; Alter table 源表... ...

sql Union和Union All的使用方法

UNION的一个限制是两个 SQL 语句所产生的栏位需要是同样的资料种类。另外,当我们用 UNION这个指令时,我们只会... ...

datastage server job之dsjob 命令

Datastage 的job可以通过dsjob命令来调用job或者获得job的信息,以及运行的报告和日志。 安装Data... ...

执行Insert Exec时的隐藏开销 分析

The Hidden Costs of INSERT EXEC INSERT and EXEC: relationa... ...

JDBC 数据库常用连接 链接字符串

1、Oracle8/8i/9i数据库(thin模式) Class.forName("oracle.jdbc.driver... ...

ORACLE 系统函数大全SQLSERVER系统函数的异同

字符函数 下面是Oracle支持的字符函数和它们的Microsoft SQL Server等价函数。 函数 Oracl... ...

数据库 三范式最简单最易记的解释

书上讲了好多, 归结起来3句话: 1NF:字段不可分; 2NF:有主键,非主键字段依赖主键; 3NF:非主键字段不能相互... ...

主键与聚集索引

主键(PRIMARY KEY ) 来自MSDN的描述: 表通常具有包含唯一标识表中每一行的值的一列或一组列。这样的一列或... ...

数据库触发器(Trigger)的一点使用心得

(1) 针对较为复杂的跨多表的数据业务级别的约束,可以通过触发器来替代大量的后台判断代码,效率较高且便捷。 (2) 如果... ...

postgresql sql批量更新记录

代码如下:CREATE FUNCTION updateTchrNm() RETURNS void AS $body$ ... ...

sql join on 用法

A left join B 的连接的记录数与A表的记录数同A right join B 的连接的记录数与B表的记录数同 ... ...

SQL 按特定字段值排序

id, name shandong01 name1 shandong02 name2 shandong03 name3 ... ...

jdbc 数据库的连接(sqlserver oracle)

1.sql server 2000数据库的连接方式: 代码如下:Connection con; public Conn... ...

rfedfre

让你的insert操作速度增加1000倍的方法

很多时候方法选对了对于我们做事将会是事半功倍。 大家平时都会使用insert语句,特别是有时候需要一个大批量的数据来做测... ...

数据库 关系连接

连接分类 关系间的连接分为内连接(inner join)和外连接(outer join)。 外连接又可分为:left o... ...