Выбор продавца с самым высоким коэффициентом и самой низкой ценой за продукт - PullRequest
0 голосов
/ 20 апреля 2020

Из моей таблицы «Заказы» я пытаюсь получить по каждому товару поставщика с самым высоким коэффициентом заказа и самой низкой ценой.

      select v.[Vendor_pk], p.[Product_pk],o.[UnitPrice], o.[RatioOrder], o.[TotalPrice]
  from [DWH].[ORDERSfact] o
  inner join [DWH].[VENDORdim] v
  on o.[Vendor_pk]=v.[Vendor_pk]
  inner join [DWH].[PRODUCTdim] p
  on o.[Product_pk]= p.[Product_pk]

  order by 2, 4 desc, 3

enter image description here

Как я могу сделать это здесь?

1 Ответ

0 голосов
/ 20 апреля 2020

Я пытаюсь получить от каждого продукта поставщика с самым высоким коэффициентом заказа и самой низкой ценой.

Использование row_number():

select vp.*
from (select v.[Vendor_pk], p.[Product_pk],o.[UnitPrice], o.[RatioOrder], o.[TotalPrice],
             row_number() over (partition by product_pk order by ratioorder desc, price asc) sa seqnum
      from [DWH].[ORDERSfact] o join
           [DWH].[VENDORdim] v
           on o.[Vendor_pk] = v.[Vendor_pk] join
           [DWH].[PRODUCTdim] p
           on o.[Product_pk] = p.[Product_pk]
     ) vp
where seqnum = 1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...