SQL文とは
SQL文は、データベースに指示を出すための命令文で、SQLという言語によって記述されます。SQLは、世界初のリレーショナルデータベース管理システムが誕生した際に用いられた言語をもとに作られています。
当時の言語の名称は「SEQUEL(シーケル)」でしたが、何度か改訂を重ねてSQLに改名されました。SQLは現在も数年に一度改訂されています。
なお、SQLはデータベース言語として標準化されています。そのため、異なる形式のデータベースでも同じようにSQL文で命令可能です。SQLは、一度学習すれば幅広く活用できる言語といえるでしょう。
現代のビジネスでは大量のデータを効率よく扱うことが求められます。つまり、SQLの活用を含めた、データベースの有効利用がビジネスの鍵を握っているのです。このような背景から、SQLを習得する意義は年々大きくなりつつあります。
SQL文の基本的な書き方
では次に、データの取得において使われるSQL文を例に、文の構造を見ていきましょう。後述しますが、データ取得の命令を出すSQLをSELECT文といい、以下のように構成されます。
SELECT 列名 FROM テーブル名 WHERE 条件;
基本は、SELECTやFROM、WHEREといった「項目」と、列名やテーブル名、条件といった「値」をつなぎあわせ、最後に「;」をつけます。値が複数になる場合は「,」で区切ります。
実際にどのようなSQL文になるのかは次の見出しで解説します。
\ 開発ツール の製品を調べて比較 /
製品をまとめて資料請求!
資料請求フォームはこちら
資料請求した製品の比較表が無料で作成できます
SQL文の基本命令
SQL文を作成するうえで、覚えるべきなのは、「SELECT」「INSERT」「UPDATE」「DELETE」の4種類の命令文です。それぞれどのような命令文なのか、詳しく紹介します。
データを取得する「SELECT」
データベースからデータを引き出すSQL文を、SELECT文といいます。基本形は「SELECT 列名 FROM テーブル名;」です。SELECTはどの列のデータを検索するか、FROMはどのテーブル(表)のデータを検索するかを指定する項目です。
以下のテーブルを例に見ていきましょう。テーブル名は「tableX」とします。
name |
sales |
price |
A |
1 |
100 |
B |
3 |
200 |
C |
6 |
50 |
このとき、「SELECT name,sales FROM tableX;」と記述すると、以下のようにデータが抽出されます。
また、「WHERE 条件式」を加えることで、細かな条件を指定して抽出するデータを絞れます。例えば「SELECT name,sales,price FROM tableX WHERE 100 <= price;」なら、priceが100以上の行のみ取得。ほかに、データの順番の並び替えなども可能です。
データを追加する「INSERT」
データベースにデータを追加するSQL文をINSERT文といいます。基本形は「INSERT INTO テーブル名 (列名) VALUES (列に入れるデータ);」です。例として、上述したtableXに以下のデータを追加する場合を見てみましょう。
- name
- D
- sales
- データなし
- price
- 100
この場合、「INSERT INTO tableX (name, price) VALUE (D,100);」と記述。その結果、テーブルは以下の状態になります。
name |
sales |
price |
A |
1 |
100 |
B |
3 |
50 |
C |
6 |
50 |
D |
NULL |
100 |
データが追加されなかった部分はNULL(空白)となります。
ちなみに、すべての列にデータを追加する場合は、列名の記述は省略可能です。例えば、商品Dのsalesが5の場合「INSERT INTO tableX VALUE (D,5,100);」とできます。
データ更新を行う「UPDATE」
UPDATE文は、データの更新を行うSQL文です。基本形は「UPDATE テーブル名 SET 更新処理内容;」です。例えば、tableXにおいてsalesのデータをすべて0にする場合は「UPDATE tableX SET sales = 0」となります。
また、条件を付けて特定のデータのみ更新することも可能です。その場合の基本形は「UPDATE テーブル名 SET 更新処理 WHERE 条件式 」です。
例えば、tableXにおいて「priceが100のものだけsalesを0」にする場合、UPDATE文は「UPDATE tableX SET sales = 0 WHERE price = 100;」。結果として、tableXは以下の状態になります。
name |
sales |
price |
A |
0 |
100 |
B |
3 |
200 |
C |
6 |
50 |
D |
0 |
100 |
データを削除する「DELETE」
DELETE文は、データの削除を指示します。基本形は「DELETE FROM テーブル名;」です。例えば、「DELETE FROM tableX;」とした場合、tableXを丸ごと消去します。しかし、このような形で利用する機会は多くないでしょう。
一般的には、条件を付けて部分的にデータを削除します。その場合の基本形は「DELETE FROM テーブル名 WHERE 条件式;」。例えば、tableXから商品Bのデータを削除する場合「DELETE FROM tableX WHERE name = B;」となります。
ただし、削除の作業は細心の注意を払う必要があります。SELECT文との組み合わせや、複数条件の設定などが正しく行われているか確認しましょう。
SQL文の基本を理解し、データベースを操作しよう
SQL文とは、SQLという言語で記述される、データベースに対する命令文です。SQL文を学習することで、多くのデータベースを効率的に操作できるでしょう。
ただし、システムをノンプログラミングで扱えるツールも広がりつつあります。それらの活用により、SQL言語の知識がない人でもシステムの開発や管理に携われます。
まずは開発環境から見直したい方は、開発ツールの比較のため以下より資料請求をし、製品を検討してみましょう。