質問: Accessに詳しい方! 最近Accessを始めた者です。課題で行き詰まっています。参考書を読んでも,中々イメージが掴めません。 SQLの回答を御願い致します。
回答: ○問題1: 1つ疑問ですが、受注明細テーブルの『単価』×『数量』・・・ →普通の正規化を考えると、単価は『商品テーブル.[単価]』が正しいと思います。 外部結合する必要があるみたいですし、受注ごとに単価が変わる仕様なんですかね・・・ Accessというより一般的なSQLになってしまっていますが、Accessでもたぶん(?)いけると思います。 ※「商品テーブルに受注明細テーブルを~左外部結合」となっているので下記で書きます。 ただ、商品テーブルの必須項目と思われる『ID』列がNullになることってあるんですかね・・・? SELECT A.[商品名], B.[単価] * B.[数量] AS '金額' FROM 商品テーブル AS A LEFT OUTER JOIN 受注明細テーブル AS B ON A.[ID] = B.[商品ID] WHERE B.[単価] * B.[数量] >= 1000000; ○問題2: 受取日はDatetime型のカラムなんですかね? テキスト/Varchar型とかだと変わってきたりすると思います。 SELECT Format(B.発注日,"m") AS '受取月' FROM 商品テーブル AS A INNER JOIN 発注明細テーブル AS B ON A.[ID] = B.[商品ID] WHERE Format(B.発注日,"m") between "3" and "4"; 他にもやり方はあると思いますが、とりあえずこんな感じで。