jiichan.com

PROGRAMMING

SQLの言語構成

小さなアプリやシステムで扱うデータはテキストファイルでもある程度使えますが、 規模が大きくなると
MySQL・PostgreSQL・SQL Server・Oracleなどのデータベースの使用が欠かせません。
データベース(リレーショナルデータベース)のデータを操作するためにはSQLの知識が必須なので、SQLの勉強をしてみます。 データベースはMySQLを使用しました。使用するテーブルは次のふたつです。

【テーブル:都道府県一覧】

都道府県CD都道府県名
01北海道
02青森県
03岩手県
04宮城県
05秋田県
06山形県
07福島県
08茨城県
09栃木県
10群馬県
11埼玉県
12千葉県
13東京都

【テーブル:市区町村一覧】

都道府県
CD
市区町村
CD
確認CD団体CD市区町村
011002011002札幌市
012025012025函館市
012033012033小樽市
012041012041旭川市

DMLとDDL

SQLには、データを操作する言語(DML)とデータを定義する言語(DDL)、さらにデータを制御する言語(DCL)の三つがあります。

データを操作する言語(DML)には次の4つの命令文があります。 1. データの格納されたテーブルに問い合わせ、結果を得る「SELECT」文。 2. テーブルに新規にデータを挿入する「INSERT」文。 3. テーブルに格納されたデータを変更する「UPDATE」文。 4. テーブルのデータ行を削除する「DELETE」文。
データを定義する言語(DDL)には主なものとして次の文(命令)があります。 1. オブジェクト(テーブル・ビューなど)を作成する「CREATE」文。 2. オブジェクトを削除する「DROP」文。 3. オブジェクトの属性を変更する「ALTER」文。
データを制御する言語(DCL)には、 1. トランザクションを確定する「COMMIT」文。 2. トランザクションを取り消す「ROLLBACK」文。 3. データを操作する権限をユーザーに与える「GRANT」文。 などがあります。

この他にも各データベース特有の方言的な命令文があります。

SQL文の基本的な構成

SQL文の基本的な構成を「SELECT」文で示すと
SELECT句 列名、列名、列名 FROM句 テーブル名 WHERE句 条件式 となります。


SELECT 都道府県CD, 市区町村CD, 市区町村名 FROM 都道府県一覧 WHERE 都道府県CD = '02'

この例では、テーブル都道府県一覧から、都道府県CDが02(青森県)のものを条件に、都道府県CD・市区町村CD・市区町村名の項目を抽出されます。

この他に抽出データをグループ化するGROUP BY句、 GROUP BY句で集計した結果に対して抽出条件を指定する際に使用するHAVING句、 抽出データをソートするORDER BY句などが使えます。

今後ページを分けて各命令文を勉強していきます。