Oracle, postgre, MySQLの違いを教えてください!!
いまPostgreSQLについて調べているのですが、調べてもイマイチ他のDBとの違いがわかりません。。
具体的にどんな機能が異なるのか、教えて頂けると幸いです。

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。
Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。
PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。
DB2(IBM Database2)は、IBMのリレーショナルデータベース管理システム製品です。 UNIXとWindows、IBM社のメインフレームOS用が用意されており、 幅広いプラットフォームに対応しています。
MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。
Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。
PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。
DB2(IBM Database2)は、IBMのリレーショナルデータベース管理システム製品です。 UNIXとWindows、IBM社のメインフレームOS用が用意されており、 幅広いプラットフォームに対応しています。
0グッド
2クリップ
投稿2015/06/02 14:14
Oracle, postgre, MySQLの違いを教えてください!!
いまPostgreSQLについて調べているのですが、調べてもイマイチ他のDBとの違いがわかりません。。
具体的にどんな機能が異なるのか、教えて頂けると幸いです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
ほとんど同じです。
Oracle
長所:複雑なことができる。
短所:べらぼうに高い。
ストアドプロシージャが書きにくい。
SQLの文法に癖(方言)が多い。
PostgreSQL
長所:そこそこ複雑なことができる。
短所:DDLでコミットされない(長所かな……)。
VACUUMが必要。
MySQL
長所:単純なら速い。
エンジンを変えられる。
短所:複雑なことができない。(OLAP関数やFULL OUTER JOINがないなど)
日付型の自動変換など、ミスを誘発するお節介機能がある(長所という人も……)
投稿2015/06/03 00:43
総合スコア295
0
細かいところでいろいろ違います。例えば,postgresにはシステムテーブルというユーザに見えないテーブルがあって、デッドタプルという不要な領域がたまっていくので(システムテーブルに限りませんが)、定期的にVACUUMという作業が必要となります。
mysqlに上記のようなテーブルはなく、VACUUMという作業を行う必要はありません。トランザクション機能に対応したINNODBというmysqlのストレージエンジンは5.6で高速化のための様々な追加機能があります。
また、mysqlにはMyISAMとINNODBの2つからストレージエンジンを選ぶことになりますが、MyISAMはテーブルロックしかかけることができませんが、INNODBは行ロック、テーブルロック両方かけることができます。
あと、mysqlはORACLEやpostgresにあるFULL OUTER JOINが使えないので、UNION句とJOIN句を組み合わせてクエリを作る必要があります。
投稿2015/06/02 20:45
総合スコア1161
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。