2017-07-27 16 views
-1

私はプロジェクトに取り組んでおり、私はデータベースの初心者です。私は、以下の質問にシナリオとデータベーステーブルが記載されているのに役立つ助けが必要です。依頼のデータベースクエリ

データベースのテーブル:

  • Product(PID:整数、タイムスタンプ:整数、名前:文字列、価格:本当、所在地:文字列)
  • Customer(CID:整数、Eメール:文字列)
  • Purchases(PID:整数、CID:整数、受注:整数、量:整数)
  • Totals(受注:整数、CID:整数、totalprice:本当の、タイムスタンプ:整数)

シナリオ:

プロダクトIDは、スキーマ内で複数回発生する可能性があります。場所または価格が更新されるたびに、変更の時刻を示すタイムスタンプとともに別の行がデータベースに追加されます。名前は変更されないので、同じpidは常に同じ名前を意味します。

合計は、購入が行われた日時と全商品の合計価格が表示された購入テーブルの要約です。

可能な限り、できるだけ早く投影を試みてください。

上記のデータベースを使用して、次の問題のためのクエリを提供します。いくつかの時点で持っていた時間の中でいくつかの点でe20.00よりも多くを要する製品名および製品名を探す

  1. コストはe0.10未満です。

  2. e200以上を一度に費やした顧客のメールアドレスを検索します。

  3. 少なくとも1つの価格変更があった製品のpidを検索します。

  4. 「5-12」の両方の位置に表示されている製品の名前を検索すると「A3」

  5. いくつかの点で、E1未満の費用がかかるというそれぞれの製品を購入した顧客のCIDを検索します。 00

  6. 店舗に登録されているものの購入していない顧客のIDを検索します。

  7. 合計購入額が最も多い顧客のcidを検索します。

  8. 登録された各顧客によって少なくとも1回は購入された最も高価な製品を探します。

  9. タイムスタンプ20150625以降に販売されていないが、その日付以前に少なくとも1回は販売されている製品のピッドを検索します。

  10. 食料品店はデータベースを改善したいと考えています。基本的にPurchasesテーブルに購入時の製品価格を加えたテーブルを返すクエリを記述します。

+4

私たちはあなたの宿題をしません。自分でそれを学び、試してみなければいけません。もしあなたが本当にうまくやっていなければ、それについて具体的な質問をするべきです。 – criw

+0

こんにちは、これは家事ではありません。これは私が取り組んでいるプロジェクトです。私はすでにデータベースとテーブルを作成していますが、クエリを実行しようとしましたが、結果は得られません。最初のクエリのアイディアを教えてください。それは実際に私の仕事に役立ちます。 – Achor

答えて

0

のは、クエリ1で❤

プロジェクトを開始するためにあなたの助けのビットを提供してみましょう、私たちはテーブルProductsで排他的に作業する必要がある、とあなたはpriceでそれらの製品のnameを見つけたいですxより大きくyより小さい。まず

、列は我々テーブルから取得したい:

SELECT name, price FROM Products 

を次に、あなたは0.10よりも安価20よりも高価な製品、および製品情報を取得するクエリを必要とするとして、あなたは条件を使用することができますBETWEENNOTに戻っ:

SELECT name, price FROM Products 
WHERE price NOT BETWEEN 0.10 and 20 

そして、あなたは読みやすくするためにそれを注文することができます:

SELECT name, price FROM Products 
WHERE price NOT BETWEEN 0.10 and 20 
ORDER BY name ASC; 

これが必要なのかどうかはわかりませんが、少し助けてくれることを願っています!

関連する問題