[PostgreSQL] サンプルのデータベースを用意する

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

練習用に手頃なサンプルデータベースが欲しくなることってありますよね? 僕の場合だとブログを書くときにサンプルが欲しくなったりするのですが、結果的にはPostgreSQL Tutorialにあったのですが、探すのに少し苦労しましたのでメモします。

環境

MacOS 10.10.5 PostgreSQL 9.4.5

※PostgreSQLのインストールについては割愛します。

サンプルデータベースを作る

まずはPostgreSQL Tutorialからサンプルをダウンロードします。

スクリーンショット 2016-07-22 11.13.53

次にサンプルデータを入れるためのデータベースを用意します。

PostgreSQL内で

CREATE DATABASE dvdrental;

次にunzipコマンド先ほどダウンロードしたzipファイルを展開します。

unzip dvdrental.zip

次に同じディレクトリで以下のコマンドを叩きます。

pg_restore -U postgres -d dvdrental ./dvdrental.tar

これでサンプルのデータベースは用意できていますので、PostgreSQLに入って確認します

psql dvdrental
\dt
             List of relations
 Schema |     Name      | Type  |  Owner   
--------+---------------+-------+----------
 public | actor         | table | postgres
 public | address       | table | postgres
 public | category      | table | postgres
 public | city          | table | postgres
 public | country       | table | postgres
 public | customer      | table | postgres
 public | film          | table | postgres
 public | film_actor    | table | postgres
 public | film_category | table | postgres
 public | inventory     | table | postgres
 public | language      | table | postgres
 public | payment       | table | postgres
 public | rental        | table | postgres
 public | staff         | table | postgres
 public | store         | table | postgres
(15 rows)

これでちゃんとサンプルのデータが用意されているのがわかります。 このサンプルにはER図も用意されています。

スクリーンショット 2016-07-24 18.01.41

最後に

joinや相関サブクエリーといったSQLの動作確認をしようと思うといいサンプルがなかったり、自前で用意するとなると少し煩わしいですが、これで複雑なSQL文の動作確認や練習が思う存分できますね。 今後このサンプルを使って複雑で長いSQL文の解説記事なんかを書いてみたいと思います。