先日データベーススペシャリストを受けて来ました(^^ゞ
結果はまぁまぁで受かるかどうかは微妙なとこです^^;
ともかくせっかく勉強したのもあるので、基礎的なデータベースの知識としてアプリ開発でも使える
SQLの形でわかりやすくまとめていきたいと思います。
今回SQLのSELECT文の例を載せ、データベースの用語を付け足します。
SELECT文だけで色々な例がわかるようにしていきますので(^^)
SELECT文
【選択】
テーブルscoreの全ての行(タプル)を取り出し、全ての列(属性)を表示します。
【射影】
テーブルscore の全ての行に含まれる列 id と列 name を表示します。
テーブルs(score)とテーブルp(person)を結合して、テーブルsとテーブルpに含まれる全ての列
を表示します。
(2つのテーブルを結合して全ての列を表示することを等結合といいます)
(=結合する列が重複して表示=集合演算の直積ともいう)
を表示します。
(2つのテーブルを結合して全ての列を表示することを等結合といいます)
(=結合する列が重複して表示=集合演算の直積ともいう)
【選択】【射影】【自然結合】
テーブルsとテーブルpを結合して、各テーブルに含まれる列を一部表示します。
(2つのテーブルを結合して結合する列の重複がなく表示することを自然結合といいます)
(=結合する列が重複なしに表示)
(2つのテーブルを結合して結合する列の重複がなく表示することを自然結合といいます)
(=結合する列が重複なしに表示)
【選択】【和】
テーブルscoreの全ての行を取り出した結果に、テーブルpersonの全ての行を付け足します。
(これは関係代数(関係モデルにおける演算体系)の集合演算の和に相当します。)
(UNIONは重複行は1つだけ表示しますが、UNION ALLだと重複行もそのまま表示します)
(これは関係代数(関係モデルにおける演算体系)の集合演算の和に相当します。)
(UNIONは重複行は1つだけ表示しますが、UNION ALLだと重複行もそのまま表示します)
【選択】【射影】【差】
SELECT文を用いて、
関係代数の集合演算(和、差、積、直積)
関係代数独自の演算(射影、選択、結合、商)
について合わせて説明しました。
SELECT文だけでも他にも色々と説明したいことがありますが、
それは、後日ここにまとめる形で追記していきます(´・ω・`)
他にわかりにくい箇所があったらおしえてくださいm(_ _)m
0 件のコメント:
コメントを投稿