平成29年秋期 午前 問28 射影について

タマルさん  
(No.1)
https://www.ap-siken.com/kakomon/29_aki/q28.html

解説に下記説明があります。
数学の集合論に基づく関係モデルでは要素の重複が許されません。すなわち厳格に言えば、射影は「列の取り出し→重複の排除」を組み合わせた操作だということになります。
問題文中には、数学の集合論に基づく関係モデル…云々の記載がありませんが、射影といえば『重複は認めないもの』として覚えてしまっていいのでしょうか。
よろしくお願いします。
2024.04.04 14:42
GinSanaさん 
AP プラチナマイスター
(No.2)
この投稿は投稿者により削除されました。(2024.04.04 15:39)
2024.04.04 15:39
GinSanaさん 
AP プラチナマイスター
(No.3)
Projection (relational algebra) wikipedia

When implemented in SQL standard the "default projection" returns a multiset instead of a set, and the π projection is obtained by the addition of the DISTINCT keyword to eliminate duplicate data.
SQL 標準で実装すると、「デフォルトの射影」はセットではなくマルチセットを返し、重複データを排除するために DISTINCT キーワードを追加することで π 射影が取得されます。
の記述のように、関係代数の概念として本来要求される「射影」は重複しない値の組なので、SQL側では「関係代数の概念として本来要求される「射影」」になるように合わせる必要があるのです。
2024.04.04 15:39
タマルさん  
(No.4)
GinSanaさん、ありがとうございます。

なるほどです。射影というものは本来(概念上)、重複しないわけなのですね。
でも、SQLで単に SELECT ◯◯, △△ とした場合はデータが重複してしまう。
よって、SQLで概念上の射影を実現するには、DISTINCTで重複を削除しなければならない。
(GinSanaさんの言葉を言い換えただけですけど😅)

さすが応用情報は一歩深いです。
理解できました。ありがとうございました。
2024.04.04 16:34

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。

その他のスレッド


Pagetop