命令介绍

CREATE CAST:定义数据类型之间进行转换。

阿里云2000元代金券免费领,最新优惠1折抢购,2核4G云服务器仅799元/3年,新老用户同享,立即抢购>>>

命令格式

CREATE CAST (source_type AS target_type)     WITH INOUT     [ AS ASSIGNMENT | AS IMPLICIT ]

参数说明

  • source_type:转换的源数据类型。
  • target_type:转换的目标数据类型。
  • WITH INOUT:表明转换是I/O转换,通过调用源数据类型的输出函数来执行,并将结果传给目标数据类型的输入函数。
  • AS ASSIGNMENT:表示转换可以在赋值模式下隐含调用。
  • AS IMPLICIT:表示转换可以在任何环境里隐含调用

使用示例

通常来讲,在filter中字符类型和数值类型进行比较的时候默认是不进行转换,现可以通过CREATE CAST来创建一个CAST支持字符类型和数值类型进行比较。示例如下:

CREATE TABLE test_cast(id text); INSERT INTO test_cast VALUES(888); SELECT * FROM test_cast aa WHERE id > 888; CREATE CAST (text AS integer) WITH INOUT AS IMPLICIT; SELECT * FROM test_cast aa WHERE id > 888;

CREATE CAST_CAST_DDL_SQL参考_交互式分析Hologres

更多关于create cast的详情请参见PostgreSQL CREATE CAST