统一SQL介绍
https://www.light-pg.com/docs/LTSQL/current/index.html
源和目标
源数据库:Oracle
目标数据库:Postgresql,TDSQL-MySQL,达梦8,LightDB-Oracle
操作目标
在Oracle中,cast函数允许将一种内建数据类型转换成另一种内建类型。当前统一SQL支持红框语法分支到目标数据库的转换。

在Oracle中,cast内建类型转换列表,本文针对cast(expr as number)说明经过统一SQL转换到目标库中与之适配的数据类型。

统一SQL转换
通过统一SQL到目标库Postgresql,TDSQL-MySQL,达梦8,LightDB-Oracle转换结果如下:
(关于数据类型number/decimal/dec/numeric还可参考文章:https://blog.csdn.net/Richar1/article/details/137876283 )
| cast(x as target_type) | 测试Oracle-SQL | 2pg-expect | 2tdmysql-expect | 2dm-expect | 2ltora-expect |
| number | select CAST(col_float_binary AS NUMBER) AS to_nu FROM topg_function_cast_table WHERE id = 1; | decimal | decimal | number | number |
| number(*) | select CAST(col_float_binary AS NUMBER(*)) AS to_nu FROM topg_function_cast_table WHERE id = 1; | decimal | decimal | number | number |
| number(*,0) | select CAST(col_float_binary AS NUMBER(*,0)) AS to_nu FROM topg_function_cast_table WHERE id = 1; | decimal(38,0) | decimal(38,0) | number(38,0) | number(38,0) |
| number(*,s) | select CAST(col_float_binary AS NUMBER(*,2)) AS to_nu F |


9269

被折叠的 条评论
为什么被折叠?



