射影とは、テーブル(関係)から特定の列(属性)を選択すること。
IT用語でない「射影」なら、影を映し出すこと。プロジェクターをイメージすればOK。
ただ、IT用語(データベース)の世界でいえば、テーブルから特定の列を選択することです。
データベースでの「射影」は、テーブルから特定の列を選択すること
データベースでの「射影」は、テーブルから特定の列を選択することです。
テーブルは、データベース内でデータを保存するための箱本体のこと。
もっと言えば、「表(ひょう)の形をした、何か(第一正規化されたもの)」だと思えばOK。
わざと難しい書き方をすると、「関係から特定の属性だけを取り出す」なんて書かれたりするけど、同じ意味です。テーブルのことを「関係」と呼ぶ意味がいまいちわからんけど、しょうがない(*´▽`*)。
このことさえわかっていれば、基本情報の令和元年の秋問はOKです。
射影と選択の違い・覚え方
射影と選択の違い・覚え方を簡単に。ひよこSEの主観ですが、「射影」がなぜだか、やたらめったら基本情報技術者試験で出る気がします。
違い
射影と選択のちがいは、列であるか行であるか。
- 射影:テーブルから特定の「列」を選択
- 選択:テーブルから特定の「行」を選択
ついでではあるけど、もう2つ覚えておいてほしいです。
- 結合(JOIN):テーブル同士を、よこにくっつける
- 和(UNION):テーブル同士を、たてにくっつける
覚え方(イメージ)
覚え方は、イメージしやすい「選択」から覚えるほうが、個人的にはベター。
ゲームで何でもいいけど、選択画面をイメージしてみてください。
「選択画面」と聞くと、こんなのを思い浮かべますよね(ドラクエがわかりやすい)。
ただ、横に選択(=「射影」)するのもありますよね。
※スマブラとか。スマブラは、たての「選択」も混ざっているけど、あくまでイメージ。
横に選ぶのも「選択」でダブってしまうので、「列」を選ぶのは「射影」になったと思ってください。
SQLでの射影は、SELECTされるの項目のこと
SQLでの射影は、SELECTされるの項目のこと。
SELECT
学生番号
, 性別
, 氏名
FROM
学生テーブル
WHERE
入学年度 = ‘2023’
こんな感じのSQLがあったとしたら、「学生番号, 性別, 氏名」が射影される項目です。
まとめ
データベースの世界でいう「射影」ときたら、テーブルから特定の列を選択すること。
スマブラで、キャラを横に選ぶイメージです。
SQLのなかのSELECTされる項目のことだと思ってくださいまし(-_-;)。
コメント