LoginSignup
6
1

More than 5 years have passed since last update.

OracleDBとPostgreSQLの相違点

Last updated at Posted at 2018-04-25

DBを移行する際などに気を付けるべき点を記述する。

データ型

OracleDatabase PostgreSQL
数値型 NUMBER Integer, Numeric
文字型 CHAR, VARCHAR CHAR, VARCHAR
日付型 DATE, TIMESTAMP DATE, TIMESTAMP
バイナリ列データ型 RAW bytea

空文字列("")の扱い

OracleDatabase   空文字列("")をNULLとして扱う。
PostgreSQL          空文字列("")とNULLを違うものとして扱う。

SQL

varchar型のデータをWHERE句に指定する際

OracleDatabaseは条件をシングルクォートで囲んでも囲まなくてもOK

SELECT * FROM hoge WHERE  column = '条件' ;
もしくは
SELECT * FROM hoge WHERE  column = 条件;

PostgreSQLではシングルクォートで必ず囲む必要がある

SELECT * FROM hoge WHERE  column = '条件' ;

外部結合

OracleDatabaseは結合演算子(+)が利用できる
PostgreSQLは結合演算子(+)が利用できず、JOIN句を利用する必要がある。

システム日付の取得

OracleではCURRENT_DATE, SYSDATEで取得可能
PostgreSQLではCURRENT_DATE, now()を利用する。

6
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1