暂无图片
分享
L
lxx
2023-04-03
pg中以下转换类型正确的方式有?

pg中以下转换类型正确的方式有?
A
select to_number(‘5’),to_date(‘2020-04-26’,‘yyyy-mm-dd’)
B
select cast(‘5’ as int),cast(‘2020-04-26’ as date);
C
select ‘5’ :: int,to_date(‘2020-04-26’,‘yyyy-mm-dd’);
D
select ‘5’ :: int ,‘2020-04-26’ :: date;

收藏
分享
2条回答
默认
最新
Zixin Huo

BCD都可以将字符串转换为对应的数字或日期类型。不过,它们使用的语法略有不同:
cast是标准的类型转换的函数;
::双冒号是pg中更简洁的表示类型转换的方式;
不能直接使用to_number(‘5’),否则会报错,需要在to_number(‘5’,‘text’)指定转换的数字的格式

B. cast 是 SQL 标准中的语法,也被 PostgreSQL 所支持,用于将一个数据类型转换为另一个数据类型,它的语法为 cast(expression as target_type)。该选项使用了 cast 语法进行转换。

C. :: 也是 PostgreSQL 中用于类型转换的语法,它的语法为 expression::target_type,其中 expression 表示需要转换的表达式,target_type 表示目标数据类型。该选项使用了这个语法进行转换。

D. 这个选项使用的也是 :: 语法,与选项 C 相同,只是将两个转换操作写在了一起。

需要注意的是,对于某些特殊情况下的转换,不同的方式可能会有不同的表现,需要根据具体情况选择合适的方式进行转换。

暂无图片 评论
暂无图片 有用 2
暂无图片
L
lxx
问题已关闭: 问题已经得到解决
暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏