当前位置:   article > 正文

PG与oracle差异_pg数据库和oracle数据库区别

pg数据库和oracle数据库区别

PG与Oracle差异

EDB PPAS是EDB推出的一款同时兼容Oracle和PostgreSQL协议的数据库,在去O的场景中,使用非常广泛,价格便宜,同时性能和Oracle差不多,并且SQL语法,存储过程等兼容性都特别好。
除了Oracle兼容,EDB PPAS实际上底层是PostgreSQL,如果你想把PPAS跑在兼容PG的模式下,需要调整一些参数。(因为Oracle和PG在某些功能点上的取向不太一致,下面举例)

基本数据类型差异

Oracle PostgreSQL
Varchar2 varchar
number numeric
date timestamp/date/time
不支持boolean,可通过0/1代替 支持boolean
null null

基本函数差异

  • item Oracle PostgreSQL

  • 字符串链接 || concat()

  • 系统当前时间 SYSDATE

  • now()/CURRENT_TIMESTAMP/CURRENT_DATE/CURRENT_TIME

  • 对时间或数字截取 trunc() date_trunc()

  • to_char,to_number,

  • to_date 自动格式转换

  • 需指定日期格式
    eg:to_date(timejoin,‘yyyy-MM-dd’)

  • 判空操作 nvl() coalesce()

  • 条件判断 decode() case…when…then

  • 去空格 trim()/ltrim()/rtrim() trim()

  • 字符串截取 substr() substr()

  • dual伪表 支持 不支持
    (1)coalesce(COL1,COL2,COL3):返回参数中第一个非null字段值
    例如:coalesce(COL1,0):如果COL1为null或‘’,则返回默认值0;否则返回COL1的值;

    (2)对时间或数据截取trunc()和date_trunc()

  • oracle–trunc()的用法:

trunc(sysdate,'yyyy');//返回当前年的第一天
trunc(sysdate, 'mm');//返回当前月的第一天
trunc(sysdate
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/872922
推荐阅读
相关标签
  

闽ICP备14008679号