本投稿ではPostgreSQLにアクセスし、
- データベースの作成
- テーブルの作成
- データの投入
- SQLの実行
を行います。
まだPostgreSQLをお持ちでない方は以下の記事
を参照にWindowsにPostgreSQLを導入してください。
pgadmin起動
本投稿ではPostgreSQLのクライアントにGUIツールであるpgadminを利用します
スタートメニューなどでpgadminと入力するなどしてpgadminを起動してください。
サーバー接続
初期からデフォルトで存在するサーバーに接続します。
Server>PostgreSQL 10を右クリックし、「Connect Server」を押してください。
するとパスワードを入力する画面が出てくるので、
インストール時に設定したパスワードを入力してください。
https://thepracticaldev.s3.amazonaws.com/i/ropadw7o5064hvgcgo0k.png
パスワードを入力したら「OK」を押してください
サーバーに接続できました。
データベース作成
Browserに表示されているサーバーの「PostgreSQL 10」を右クリックし
Create>Database...
を選択してクリック。
するとデータベースを作成する画面が出てくるので
databaseの欄にデータベース名を入力してください。
今回はsampleとしました。
入力が終わったら「Save」をクリック
sampleというデータベースが作成されました。
Browserで確認できます。
テーブル作成
では作成したsampleデータベースにさっそくテーブルを作成します。
テーブルはSQLによって作成します。
SQLの発行はQuery Toolsを使います。
sampleを右クリックし、「Query Tool」を選択してください。
Query Toolのウインドウに以下のSQLを貼り付け実行ボタン(雷のマーク)をクリックしてください。
create table m_country(
name_jp varchar(255), -- 国・地域名
name_eng varchar(255), -- ISO 3166-1における英語名
code char(3) NOT NULL PRIMARY KEY, -- numeric
alpha_3 char(3), -- alpha-3
alpha_2 char(2), -- alpha-2
region varchar(255), -- 場所
iso_3166_2 varchar(255) -- 各行政区分(ISO 3166-2)
);
クエリを実行すると
ブラウザの
sample>Schemas(1)>public>Tables(1)配下に
SQLで作成したm_countryが出現するはずです。
データ投入
それでは作成したm_countryテーブルにデータを投入します。
Query Toolを使って以下のSQLを実行します。
https://github.com/programmingMonky/sample_SQL/blob/master/country_insert.sql
- SQLが大きすぎるのでgithubのリポジトリ上に置きました。
- このデータの出典は日本語版のWikipediaです。
SQLを実行してみよう
再びQuery Toolにアクセスし、テーブル内容を確認してみましょう
select * from m_country
insertで入れたデータが確認できると思います。
それではSQLでちょっと遊んでみましょう。
Query Toolで以下のクエリを打ち込みます
select code,name_jp,region,
count('1') over(partition by region) as num
from m_country
order by num
クエリの内容は
地域ごとに類別し、少ない地域に属する国順に表示する。というものです。
※分析関数という難しい構文を使っているでSQL初心者の方は理解する必要はありません。
code | name_jp | region | num |
---|---|---|---|
643 | ロシア連邦 | ロシア | 1 |
010 | 南極 | 南極 | 2 |
470 | マルタ | 地中海地域 | 2 |
196 | キプロス | 地中海地域 | 2 |
074 | ブーベ島 | 南極 | 2 |
666 | サンピエール島・ミクロン島 | 北アメリカ | 3 |
840 | アメリカ合衆国 | 北アメリカ | 3 |
124 | カナダ | 北アメリカ | 3 |
南極にもカントリーコードが振られているという興味深いことがわかりました。
このよう本投稿に掲載した手順でPostgreSQL上に
データベースやテーブルを作成したり、
SQLでデータを扱えるようになりました。
皆様がWebアプリケーションを作成する際の参考になれば幸いです。
Top comments (2)
I need subtitles.
thank you for commented!
sorry I have no time to translate this article.
this article explain that
This article is for beginner.
May be you'll not excited.