からトップ2レコードを選択します。私は3つのテーブル持っている各カテゴリー
- 製品:ID、名前
- ProductPrices:ID、のProductId、PriceListId、バリュー、AddDateTime
- 価格表:ID、タイトル を
私は今、私がSEにしたいのProductIdとPriceListId
でProductPricesの各製品に複数の値を追加することができますプロダクトIDを持つProductPricesからすべてを選択しますが、現在の製品の各価格表の上位2つの値を選択します。
どうすればいいですか?
私はこのコードを書いた:しかし、それは価格
Select PR.PriceListId, PL.Title, PR.id, PR.ProductId, PR.Value, PR.AddDateTime
From Products FL left outer join
ProductPrices PR
on PR.ProductId = FL.id left outer join
PriceLists PL
on PR.PriceListId = PL.id
group by PR.id , PR.ProductId, PR.Price, PR.AddDateTime, PL.Title , PR.PriceListId
order by Pr.PriceListId
EDITのすべて返す:
Products:
id Name
1 Product1
2 Product2
ProductPrices:
id ProductId PriceListId Value AddDateTime
1 1 1 XXX Today
2 1 1 XXX YesterDay
3 1 1 XXX Older than yesterday
4 1 2 XXX Today
5 1 3 XXX Today
6 1 3 XXX Today
7 1 3 XXX YesterDay
9 2 1 XXX YesterDay
11 2 2 XXX Today
12 2 3 XXX Today
13 2 3 XXX Today
14 2 3 XXX YesterDay
PriceLists:
id Title
1 X
2 Y
3 Z
Result from ProductPrices By id should be:
id ProductId PriceListId Value AddDateTime
1 1 1 XXX Today
2 1 1 XXX YesterDay
4 1 2 XXX Today
5 1 3 XXX Today
6 1 3 XXX Today
9 2 1 XXX YesterDay
11 2 2 XXX Today
12 2 3 XXX Today
13 2 3 XXX Today
使用しているデータベースで質問にタグを付けてください。 –
そのSql Server 2014 –