SQLってどう使う?--その1 データベース内のデータを操作 - (page 2)

鈴木浩司(日本オラクル)

2007-10-26 17:00

データの選択(SELECT)

 では、ここからは実際にSQLを使ってデータベースに対して操作をしていきます。まずは、従業員(EMPLOYEE)表から従業員のデータを取り出すとした場合、どのようなクエリー

 を書くか見ていきましょう。先ほどSQLは英語の構文に似ていると言いましたが、英語で命令文を書く場合どのような構文になりますか?英語で命令文を作るとき、動詞から始まりますよね?SQLでクエリーを書く場合も動詞から始まめます。SQLにはいろいろな命令(動詞)がありますが、データを取り出す場合は「SELECT」を使います。

 データを取り出す為のSELECT文の構文は、以下のように書くことができます。

 構文の中の斜字体の部分は、取り出す内容によって毎回変わります。いきなり構文を見せられてもちょっと困りますよね。では、次のようにしてみるとどうでしょうか?

 SELECTと取り出す列の指定をSELECT句、FROMと取り出す表の指定をFROM句と言います。ちなみにクエリーでは命令の大文字、小文字を区別しません。ですので「SELECT」を「Select」や「select」と記述することもできます。このSELECTを使ったクエリーをSELECT文とも呼びます。クエリーの最後についているセミコロン「;」ですが、これはクエリーの終わりを意味しています。では、従業員表からデータを取り出す場合のクエリーを見てみましょう。図4は、従業員表からデータを取り出すクエリーとその結果を表しています。

図4. 従業員表からデータを取り出すクエリーと実行結果

 図4にあるようなクエリーを実行することで、従業員表に格納されている従業員のデータをすべて取得することができます。全ての列を取得したい場合は、列名を記述するところで、「*」を使います。このように非常にシンプルな記述で従業員のデータを選択することができます。さて、先程の例は全ての行を取得するようなクエリーでしたので、次は行を絞り込むために条件を指定します。例えば、部門コード(DEPTNO)が「20」の従業員だけを選択したい場合、次のようなクエリーを記述します。

 先ほどのクエリーと比較するとWHEREの記述がうしろにつきました。このように、取得するデータに条件を付ける場合は、WHEREを使って、その後ろに条件を指定します。このWHEREと条件を「WHERE句」と呼びます。

図5.WHERE句により条件を指定したクエリーと実行結果

 これまでの例では、全ての列を取り出してきましたが、実際に取り出したいデータは必要な部分だけで良いですよね。その場合は、SELECTの後ろに取り出したい列をカンマで区切って指定します。図6は、取り出したい列だけを取り出すクエリーとその実行結果です。このように、SELECT文にて列を取り出すことを「射影」と言います。

図6. SELECT文である列だけを取り出す(射影)

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

所属する組織のデータ活用状況はどの段階にありますか?

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]