データベース千夜一夜第9回

データの加工命令(3)~フィールドの一括更新と基本命令群のおさらい 長谷川裕行
有限会社 手國堂

基本命令のおさらい

ここまでで、SELECT命令によるレコードの選択(抽出)とDELETE命令によるレコードの削除、INSERT命令によるレコードの追加(挿入)、UPDATE命令による一括更新――という、SQLの基本命令を紹介してきました。基本的な書式をもう一度掲げておきましょう。


- 基本はSELECT命令 -

まず、基本がSELECT命令にあることを理解し、SELECT命令の書式をしっかり押さえておきましょう。さらに、すべてのレコードを対象とする場合以外は、WHERE句で条件を指定してレコードを絞り込むことが重要になります。

WHERE句で用いる条件式の演算子(=, < , >, <>, <=, >=, Like, BETWEENなど)の意味と使い方も理解しておきましょう。もちろん、すべてを完璧に記憶する必要はありません。「確かこんな使い方があったよなぁ」程度で構いません。必要なときに参考書やオンラインヘルプで書式を確認すればいいのです。

また、SELECT INTO命令で既存テーブルの内容を元に新しいテーブルを作る処理も、実際の業務処理での使用頻度はそう多くありませんが、覚えておくとデータベースのメンテナンスや動作テストの際に役立ちます。

UPDATE命令でフィールドの値を一斉に書き換える処理は、テスト用のデータを作る場合にも役立ちます。



- 基本命令の書式一覧 -

以下の書式に示す<フィールドリスト>は次のような書式で、1つ以上のフィールド名を記述したものです。複数のフィールドを列挙する場合は「,」で区切ります。

  <フィールド名>(, <フィールド名>, <フィールド名> ...)

1. レコードの抽出
全レコードを抽出
SELECT <フィールドリスト> FROM <テーブル名>
条件を満たすレコードを抽出(絞り込み)
  SELECT <フィールドリスト> FROM <テーブル名>
  WHERE <条件式>
抽出したレコードの並べ替え
  SELECT <フィールドリスト> FROM <テーブル名>
  ORDER BY <フィールド名> [ASC | DESC]

2. レコードの挿入
単純な挿入
  INSERT INTO <追加先テーブル>
  (<フィールドリスト>) [VALUES (<値リスト>)]
  ★フィールドリストと値リストの順序、データ型に注意!
他のテーブルから抽出したレコードを別のテーブルに挿入
  INSERT INTO <追加先テーブル> [(<フィールドリスト>)]
  SELECT <フィールドリスト> FROM <追加元テーブル> [WHERE <条件式>]
新規テーブルを作成して既存テーブルの内容を挿入
  SELECT <フィールドリスト>
  INTO <新規テーブル> FROM <追加元テーブル> ...

3. レコードの削除
全レコードの削除
  DELETE <テーブル名>
  TRUNCATE TABLE <テーブル名>
 ★全レコードを削除する場合はTRUNCATE TABLEの方が高速
条件を満たすレコードの削除(絞り込み)
  DELETE <テーブル名> WHERE <条件式>

4. フィールドの更新
全レコードに対する更新
  UPDATE <テーブル名> SET <フィールド1>=<値1>, <フィールド2>=値2, ...
条件を満たすレコードのみ更新(絞り込み)
  UPDATE <テーブル名> SET <フィールド1>=<値1>, <フィールド2>=値2, ...
  WHERE <条件式>



トップページ
フィールドの更新処理~UPDATE命令
様々なフィールド更新処理
基本命令のおさらい
基本はSELECT命令
基本命令の書式一覧
新しいサンプルデータベースの準備
あとがき
Copyright © MESCIUS inc. All rights reserved.