3.5 データベース システム - リレーショナル代数、自然結合、パフォーマンスの問題

3.5 データベース システム - リレーショナル代数、自然結合、パフォーマンスの問題

関係代数

関係代数は、関係パターンの代数操作です. 基本的に、和、積、差、デカルト積、射影、選択、および接続などのいくつかのタイプのみが試験に出ます. 他の操作は試験に含まれていません. .

写真の説明を追加してください
射影は π で表され、選択する列、つまり select ステートメントで表示される列名を示します。
選択は σ (シグマの小文字) で示され、どのタプル行を選択するか、つまり、select によって表示される結果セットの内容を示します。

自然なつながり

これは接続操作であり、多くの種類の接続が可能です. 自然接続は試験でより調査されます. 自然接続は特別な等価接続であり、記号は⋈です. 結果の観点から見た自然接続の結果:
属性列の数は、2 つの合計から繰り返し列を引いたものです;
タプル行の数は同時に満たされ、同じ属性列は等しい必要があります同時に値。

自然にできることは2つあります。
①自然接続の条件は、同じ名前の属性列があり、同じ名前の属性列があり、値が等しいことです。まず、属性に関しては、同じ名前の重複する属性列を記録する必要はありません。
②復元過程で同名の属性がリストアップされており、それに応じて一部の非主要属性を復元する必要があります。非主要属性は、同名の属性列によって決定される必要があります。そうしないと、同等の値によって取得された同名の属性列は、誰がそれを取得したかわかりません。(つまり、左辺の行列式と同名の属性を持つ機能依存関係の1つが保存され、保存された結果が右辺の決定された要因を復元できます)

写真の説明を追加してください

π1,2,3,5(σ1=4(S1×S2)), (S1×S2) は、最初に 2 つのテーブルのデカルト積を実行し、次に σ1=4 でデータをフィルタリングし、次に π1,2,3,5 を射影し、選択します。表示する列。

σ1=4(π1,2,3,5(S1×S2)), (S1×S2) 最初に 2 つのテーブルのデカルト積を計算し、次に π1,2,3,5 を射影し、表示する列を選択し、次に σ1= 4 はデータをフィルタリングします. このとき、フィールドが繰り返されるため、4 は S2 の StuId ではなく、フィールド StuClass を表すため、この式は間違っています。

パフォーマンスの問題

①一般的に、デカルト積よりも自然結合の方が良いと考えられている
②SQL文の性能向上やリレーショナル代数の新機能を検討する際は、できるだけ圧縮演算表を使う、つまり小さい表が大きい表を駆動するようにする. 同時に、デカルト積を実行する場合、結果にできるだけ影響を与えずにデータのスクリーニングを最初に実行して、デカルト積のデータ量を減らし、パフォーマンスを向上させる必要があります。

Acho que você gosta

Origin blog.csdn.net/qq_41929714/article/details/129727659
Recomendado
Clasificación