私は問題があります。スーパーマーケットで販売されている食品で測定された有害物質の値を収集する ROLAP システムで、次のファクト テーブルとディメンション テーブルを検討してください。
ファクト テーブル:
• Contaminants (TimeID, ShopID, FoodID, substance, quantityPerOunce)
This describes which harmful substance in which quantity was found on a given
food in a given supermarket at a given time.
寸法表:
• Time (TimeID, dayNr, dayName, weekNr, monthNr, year)
• Food (FoodID, foodName, brand, foodType)
Example data: (43, egg, Bioland, animalProduct)
• Place (ShopID, name, street1, region, country)
次のクエリに答えるレポートを作成する 1 つの SQL ステートメントを記述します。
- ドイツのザクセン州、チューリンゲン州、ヘッセン州で年間に測定された、動物性製品と野菜 (どちらも食品の種類) 中の物質「PCB」の最小量をリストします。
- 結果には、年、地域、および最小値が含まれている必要があります。
同じステートメントで、またリスト
- 1 年あたりの最小値 (つまり、各年におけるすべての地域の集計)
- すべての年とすべての地域における動物性製品と野菜の言及された地域における PCB の最小量の総計と同様に。
SQL クエリ
SELECT years, regions, min(quantityPerOunce)
FROM Contaminants as c, Time as t, Food as f, Place as p
WHERE c.TimeID = t.TimeID
AND c.FoodID = f.FoodID
AND c.ShopdID = p.ShopID
AND substance = "PCB"
AND foodType = "vegetables"
AND foodType = "animalProducts"
GROUP BY regions;
この種の演習の解き方がわかりません。やってみたけどわかんない。そして、これが最善の方法ではない場合でも、参加する必要があります。 Equi-Join