У меня вопрос (данные tera): «какой продукт несет наименьшую стоимость пересылки». У меня есть 2 следующие таблицы
product table shipmethod table
productid name shipmethodid shiprate
1 abc 1 2
2 def 2 4
, но таблица продуктов не имеет прямой связи с таблицей методов доставки. Однако существует косвенная связь через2 следующие таблицы
SalesOrderDetail SalesOrderHeader
id productid salesorderid id salesorderid shipmethodid
1 1 1 1 1 1
2 2 2 2 2 2
я использовал внутреннее объединение для выбора данных из разных таблиц
select pr.name , sm.shiprate from Dice_RDM.Product pr
inner join Dice_RDM.SalesOrderDetail so
on so.productid = pr.productid
inner join Dice_RDM.SalesOrderHeader sh
on sh.SalesOrderID = so.salesorderid
inner join Dice_RDM.ShipMethod sm
on sm.ShipMethodID=sh.ShipMethodID
QUALIFY ROW_NUMBER() OVER (ORDER BY sm.ShipRate) <=1;
i am getting values
name shiprate
abc 2
это правильный подход?