同じ品物を何度も購入したとき、最安値は?
同じ品物を何度も購入したとき、最後に購入した時の価格は?
など いろんな条件でデータが欲しくなります。
そんなとき、ROW_NUMBER() OVER(partition
を使うと便利です。
元々のデータ
検索するコード
SELECT * FROM (
SELECT [品名] ,[購入単価]
,ROW_NUMBER() OVER(partition by 品名 Order by 購入単価 ASC) as Num
FROM [dbo].[ZZ_RowTest]
) AS A where Num = 1
結果 2つの品物の 安値を見つけました。