2006/03/08
【it-lesson】 Vol.019 SQL集合関数
〓〓━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━〓〓 「情報処理技術者試験 午前問題攻略ストーリー」 06/03/08 Vol.019 〜 2週間で取れた黒帯など実戦では使えない 〜 関連サイト: http://www.it-lesson.net/ 〓〓━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━〓〓 殿堂入りメルマガ「特訓PDCA式で学ぼう情報セキュリティ」発行者者が 情報処理技術者試験 午前問題を分かりやすく解説します。 午前問題の攻略は、細切れの時間をいかにうまく活用するかにかかって います。 本メルマガでは、新たな試みとして会話形式を取り入れてみました。 ぜひ主人公のユウトと一緒に楽しく勉強していきましょう。 ────────────────────────────────── こんにちは。sstokkunです。 テクノブレーン社により、宿題メールでお馴染みの斉藤末広先生と 豪華講師陣が午後問題(高度)の対策を練った合格へ導く強力な 対策法を無料で配布されています。 春期試験を受験される方は、受験区分の問題をダウンロードしまし ょう。 ⇒ http://www.it-lesson.net/link/techno-brain.html 午前問題の攻略のカギは、細切れの時間をうまく使うことです。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◆午前問題出題範囲 ------------------------------------------------------------------------ ┌───────────┐ │コンピュータ科学基礎 │ ├───────────┤ │コンピュータシステム │ ├───────────┤ │システムの開発と運用 │ ├───────────┤ │ネットワーク技術 │ ├───────────┤ │データベース技術 │←今回の問題はこの分野です。 ├───────────┤ │セキュリティと標準化 │ ├───────────┤ │情報化と経営 │ ├───────────┤ │監査 │ └───────────┘ ──────────────────────────────────── 【 重 要 】取り上げる問題について ------------------------------------------------------------------------ 「午前問題攻略ストーリー」では、過去問題の中で基本的な問題かつ 応用が効く問題を多く取り上げます。 その理由は、情報処理技術者試験の午前問題は、何割か過去の問題及び 類似問題から繰り返し出題されるからです。 繰り返し出題される問題は以下の特徴があります。 ・時代が経っても普遍的な情報処理技術であること ・正解率が低かったが良問であること ・高度区分またはソフトウェア開発で出題された問題が、基本情報や 初級シスアドに流用されること ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◆問 題 ------------------------------------------------------------------------ “社員”表と“部門”表に対し、次のSQL文を実行したときの結果はどれか。 SELECT COUNT(*) FROM 社員, 部門 WHERE 社員.所属 = 部門.部門名 AND 部門.フロア = 2 社員 部門 ┌────┬──────┐ ┌──────┬───┐ │社員番号│所属 │ │部門名 │フロア│ ┝━━━━┿━━━━━━┥ ┝━━━━━━┿━━━┥ │11001 │総務 │ │企画 │ 1 │ │11002 │経理 │ │総務 │ 1 │ │11003 │営業 │ │情報システム│ 2 │ │11004 │営業 │ │営業 │ 3 │ │11005 │情報システム│ │経理 │ 2 │ │11006 │営業 │ │法務 │ 2 │ │11008 │企画 │ │購買 │ 2 │ │12001 │営業 │ └──────┴───┘ │12002 │情報システム│ └────┴──────┘ ア 1 イ 2 ウ 3 エ 4 (DB14年問30) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◆解 説 ------------------------------------------------------------------------ (DB14年問30) 難易度 ★★ 解答 ウ 3 長 池「今回もSQLの問題だよ。」 ユウト「SQLは得意だと思っていたんですが、前回間違えてしまったので、 今回はがんばります。」 長 池「うん。SQLの形(構文)をしっかり理解して、使いこなせるよう になるといいね。」 ユウト「はい。」 長 池「今日の問題は、前回より簡単かも知れないね。」 ユウト「そうですか。それじゃ間違えるわけにはいきませんね。」 長 池「まあ、そう堅くならずにリラックスして解いていこう。 SQLの問題は、情報処理技術者試験の午前問題で必ず1、2問は 出題されるよ。 過去の問題を出題形式別にいくつかのパターンに分けて、 繰り返し解いておくと効果的だよ。」 ユウト「なるほど。」 長 池「この問題のポイントは、複数のテーブルを参照して必要なデータを 取り出す集合関数を使うところだね。」 ユウト「はい。それでは解いてみます。 WHERE句で、“部門”表のフロアが2の部門は、情報システム、 経理、法務、購買が抽出されます。 その部門と社員テーブルの部門を比較すると、 ・経理に所属する社員番号11002 ・情報システムに所属する社員番号11005と社員番号12002 が抽出されます。 COUNT(*)は、抽出された件数を求めますので、3件となります。」 長 池「おぉ。良くできたね。 “社員”表と“部門”表をWHERE句に従って結合すると、 このようになるね。 ┌────┬──────┬──────┬───┐ │社員番号│所属 │部門名 │フロア│ ┝━━━━┿━━━━━━┿━━━━━━┿━━━┥ │11002 │経理 │経理 │ 2 │ │11005 │情報システム│情報システム│ 2 │ │12002 │情報システム│情報システム│ 2 │ └────┴──────┴──────┴───┘ SQL文を実行したときの結果は、3でOKだよ。」 ユウト「やったぁ。落ち着いて解けば正解を導き出せますね。」 長 池「そうだね。 それじゃ、ここで、その他の集合関数にはどのようなものが あるか確認しておこう。 ・SELECT COUNT ( <列名リスト> ) FROM <テーブル名リスト> テーブル名リストから選択された行の数をカウントします。 ・SELECT MAX ( <列名リスト> ) FROM <テーブル名リスト> テーブル名リストから選択された列名リストの最大値を求めます。 ・SELECT MIN ( <列名リスト> ) FROM <テーブル名リスト> テーブル名リストから選択された列名リストの最小値を求めます。 ・SELECT AVG ( <列名リスト> ) FROM <テーブル名リスト> テーブル名リストから選択された列名リストの平均値を求めます。 ・SELECT SUM ( <列名リスト> ) FROM <テーブル名リスト> テーブル名リストから選択された列名リストの合計を求めます。」 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◇英語を本気で学びたい方のために。 ------------------------------------------------------------------------ ピンズラー英語ってご存知ですか? 英語を聴いて声に出して体得していく方法で定評があります。 わたしも大人になってから英語を理解するのには、シャドウイングが すごい効果があるなぁと思っていたのですが、まさにそれに打って付け の英語教材です。 1課丸ごと(45分)無料視聴できますので、 このやり方をマスターして、市販のCNNの本などを活用することもできます。 ⇒ http://www.sstokkun.net/ss/?9 (画面中央部の「無料案内資料請求(無料)からお申込みできます。」) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼登場人物 ------------------------------------------------------------------------ ユウト:大学卒業後、就職した広告代理店を1年で退社。 ソフトウェア会社に就職し、1から情報処理技術について学ぶ。 長 池:ITソフトウェア会社勤務。 派遣社員として入社してきたユウトの教育担当係。 ──────────────────────────────────── ◆姉妹紙のお知らせ ------------------------------------------------------------------------ 殿堂入りメルマガ 読者6,000人超 「特訓PDCA式で学ぼう情報セキュリティ」 ⇒ http://www.mag2.com/m/0000111318.html 今年春から開始されるテクニカルエンジニア(情報セキュリティ) 「テクニカルエンジニア(情報セキュリティ)対策講座」 ⇒ http://www.mag2.com/m/0000169496.html ======================================================================== ■このメールマガジンは・・・ インターネットの本屋さん『まぐまぐ』を利用して発行しています。 ⇒ http://www.mag2.jp/ (マガジンID: 0000170241) ■登録/解除の方法 。。。 http://www.it-lesson.net/ 「情報処理技術者試験 午前問題攻略ストーリー」は、 上記URLよりいつでも登録/解除可能です。 ■注意事項 。。。 ・一部、もしくは全文の無断転載を禁止します。 ・弊誌を利用する上で生じたトラブルは、当方では一切の責任を負い ません。各自の良識と責任のもとにご利用ください。 ======================================================================== ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Copyright (C) sstokkun 2006 All Rights Reserved.


