資格

シスアド一直線!

「なにそれパソコンの資格?」「パソコンも含め、実用的な知識が身につくので、現在とても人気の高い国家試験です!」「難しいんじゃ?」「シスアド研究所が丁寧に判り易くサポートします!」

全て表示する >

◆シスアド一直線! 057号

2004/04/18

■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■


    シスアド一直線  第 057 号         2004/04/18 発行


       〜 813人のシスアド取得を目指す方のために 〜


■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■


【目次】
 ・はじめの挨拶
 ・今日の問題
 ・解説と解答
 ・おわりの挨拶


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃┃ ● ┃  はじめの挨拶
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


おはようございます!
本日の担当はけーすけです。


さて今日はいよいよ情報処理技術者試験の試験日ですね!
受験される皆様、準備の方はいかがでしょうか?


あるいは、もしかするとこのマガジンを読まれるのは試験が終了して、家に戻
られてからかもしれませんね。

その場合は、手応えはあったでしょうか?


ぜひ今回の試験の感想などメールか掲示板で教えてください (^o^)丿

メール:shisuken_project@yahoo.co.jp
掲示板:http://www.startingweb.com/bbs.cgi?job=bbsidx&bbsid=6624



それでは本日の問題は、今回の試験でも必ず出てくるであろうデータベースに
関する問題です!






┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃┃ ● ┃  今日の問題  ( 平成10年度 問36 )
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


SQLにおいて、SELECT文のDISTINCTは、SELECT文で得られる表の中から“冗長な
重複行を取り除く”ための指定である。次のDISTINCT付きのSELECT文を実行し
た結果得られる表の行数は幾つか。


〔SELECT文〕

SELECT DISTINCT 顧客名,商品名,単価 FROM 受注表,商品表
  WHERE 受注表.商品番号 = 商品表.商品番号


〔受注表〕         〔商品表〕
┏━━━━┯━━━━┓   ┏━━━━┯━━━━━┯━━━━┓
┃ 顧客名 │商品番号┃   ┃商品番号│  商品名  │  単価  ┃
┣━━━━┿━━━━┫   ┣━━━━┿━━━━━┿━━━━┫
┃大山商店│  TV28  ┃   ┃  TV28  │28型テレビ│250,000 ┃
┠────┼────┨   ┠────┼─────┼────┨
┃大山商店│ TV28W  ┃   ┃ TV28W  │28型テレビ│250,000 ┃
┠────┼────┨   ┠────┼─────┼────┨
┃大山商店│  TV32  ┃   ┃  TV32  │32型テレビ│300,000 ┃
┠────┼────┨   ┠────┼─────┼────┨
┃小川商会│  TV32  ┃   ┃ TV32W  │32型テレビ│300,000 ┃
┠────┼────┨   ┗━━━━┷━━━━━┷━━━━┛
┃小川商会│ TV32W  ┃
┗━━━━┷━━━━┛



 【ア】 2

 【イ】 3

 【ウ】 4

 【エ】 5










┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃┃ ● ┃  解説と解答
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


この問題のように表を集計して表示したい場合は「SELECT」の後に関数を付け
足すことになります。

今回は「DISTINCT」という関数を付け足していますね。

問題文の説明にあるとおりこのDISTINCTは冗長な重複行を取り除くための関数
なので、まずはDISTINCTを使わなかった場合、どんな表になるのか考えて、そ
れから重複する行を削除すれば答えが分かります!


それでは、もう一度SELECT文を見ながら、まずはDISTINCT関数を実行しない場
合の表を作成してみましょう。


> 〔SELECT文〕

> SELECT DISTINCT 顧客名,商品名,単価 FROM 受注表,商品表
>   WHERE 受注表.商品番号 = 商品表.商品番号



〔DISTINCTを使わない場合に作成される表〕
        ┏━━━━┯━━━━━┯━━━┓
  行番号┃ 顧客名 │  商品名  │ 単価 ┃
        ┣━━━━┿━━━━━┿━━━┫
    1   ┃大山商店│28型テレビ│250000┃
        ┠────┼─────┼───┨
    2   ┃大山商店│28型テレビ│250000┃
        ┠────┼─────┼───┨
    3   ┃大山商店│32型テレビ│300000┃
        ┠────┼─────┼───┨
    4   ┃小川商会│32型テレビ│300000┃
        ┠────┼─────┼───┨
    5   ┃小川商会│32型テレビ│300000┃
        ┗━━━━┷━━━━━┷━━━┛


こんな表が作成されますね。

なお、説明しやすくするために「行番号」という列を追加しましたが、本来こ
の列は作成されません。

さて、この表の中でまったく同じ値が入っている行はどこでしょうか。




ご覧の通り、1行目と2行目、さらに4行目と5行目が重複していますね。

このような「冗長な重複行」がある表に対して「DISTINCT」を実行すると、重
複が削除されるので下のような表になります。



〔DISTINCTを使った場合に作成される表〕
┏━━━━┯━━━━━┯━━━┓
┃ 顧客名 │  商品名  │ 単価 ┃
┣━━━━┿━━━━━┿━━━┫
┃大山商店│28型テレビ│250000┃
┠────┼─────┼───┨
┃大山商店│32型テレビ│300000┃
┠────┼─────┼───┨
┃小川商会│32型テレビ│300000┃
┗━━━━┷━━━━━┷━━━┛


はい、この表の中に重複している行は存在しませんね!
これが「DISTINCT」関数を使用した場合に作成される表です。


そして問題文は「DISTINCT付きのSELECT文を実行した結果得られる表の行数」
を求めるようにというものでしたから、答えはイの「3」となります (^^)






-----------------
 正解: 【イ】 
-----------------



この問題についての質問・疑問・突っ込みは掲示板にどうぞ!
http://www.startingweb.com/bbs.cgi?job=bbsidx&bbsid=6624






┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃┃ ● ┃  おわりの挨拶
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


さてさて、今日は「はじめの挨拶」も「おわりの挨拶」も試験の話題ばかりに
なってしまいますが、ご勘弁を (^^ゞ


なにはともあれ、受験してきた皆様お疲れ様でした。

おそらくあと1ヶ月もすれば結果が出るかと思いますが、その辺の細かい情報に
ついては情報処理技術者センターのホームページにて順次告知されると思いま
すので、ぜひそちらをチェックしてみてください。


情報処理技術者センター:http://www.jitec.jp/


もちろん、この「シスアド一直線!」でも、できるだけ情報が掲載され次第お
知らせして行きたいと思います (^_^)v


さらに、試験は終わりましたが、せっかく覚えた知識ですので、それをいつで
も実戦で使えるように研ぎ澄ませておくためにも引き続きマガジンの購読をい
ただければ幸いです!

また私たちも数あるメルマガの中から「シスアド一直線!」を選んでいただい
た皆様とのご縁を大切にして、皆様に「本当に役立った」と思っていただける
ようなマガジンを発行し続けたいと思っておりますので、今後とも当マガジン
をごひいきにしていただければ発行者として嬉しい限りです♪


最後に「はじめの挨拶」にも少し書きましたが、試験の感想や自己採点の結果、
さらには合格報告など、ぜひメールや掲示板に書き込んでみてください!

私たちにとっても励みとなりますし、掲示板などに書き込んでいただければこ
れから先、受験を考えている方たちにとっても大いに参考になるのではないか
と思います !(^^)!


メール:shisuken_project@yahoo.co.jp
掲示板:http://www.startingweb.com/bbs.cgi?job=bbsidx&bbsid=6624



それでは、本当に今日はお疲れ様でした!

明日からは通常通りの生活が待っているかと思いますが、まずはお風呂にでも
入って、少し早めに休んで、リフレッシュしてくださいね。


次回発行は木曜日、ひでからのマガジンをお楽しみに!






■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■


発  行  元: シスアド研究所
今日の担当者: けーすけ
ホームページ: http://www8.ocn.ne.jp/~keisoft/sad/index.htm
お  便  り: shisuken_project@yahoo.co.jp

※購読の登録・解除は下記のアドレスからご自分でお願いします。
ま ぐ ま ぐ : http://www.mag2.com/m/0000118200.htm
メ ル マ : http://www.melma.com/mag/41/m00099641/
めろんぱん : http://www.melonpan.net/mag.php?005514


■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■◇■


規約に同意してこのメルマガに登録/解除する

メルマガ情報

創刊日:2003-09-21  
最終発行日:  
発行周期:週2回  
Score!: - 点   

コメント一覧コメントを書く

この記事にコメントを書く

上の画像で表示されている文字を半角英数で入力してください。

※コメントの内容はこのページに公開されます。発行者さんだけが閲覧できるものではありません。 コメントの投稿時は投稿者規約への同意が必要です。

  • コメントはありません。