AdventureWorks - Проблема с продажной ценой - Запросы Microsoft SQL Server - PullRequest
0 голосов
/ 23 октября 2018

Просто ищу кого-то, кто скачал данные AdventureWorks и выполнил с ними запросы.

Я искал кого-то, кто бы объяснил разницу между прейскурантной ценой и ценой за единицу.

Я отфильтровал по продукту749 и 83% времени он продается клиенту с listprice = unitprice.

Я немного покопался, чтобы узнать, есть ли какие-либо скидки и т. Д. С помощью приведенного ниже запроса, который не дал ответа,Что-то мне не хватает?

select *
from sales.specialoffer
where SpecialOfferID = 1;

select SOH.customerID, 

    SOH.orderdate, 
    pp.listprice, 
    sod.unitprice, 
    sod.ProductID,  
    sod.SpecialOfferID, 
    SOD.UnitPriceDiscount, 
    sr.SalesReasonID,sr.name, 
    sr.ReasonType 
from sales.SalesOrderHeader SOH
inner join sales.SalesOrderDetail SOD
    on soh.SalesOrderID = sod.SalesOrderID
inner join production.Product PP
    on SOD.ProductID= PP.ProductID
left join sales.SalesOrderHeaderSalesReason SOHSR
    on soh.SalesOrderID = sohsr.SalesOrderID
left join sales.SalesReason SR
    on  SOHSR.SalesReasonID = SR.SalesReasonID
where standardcost >0
and PP.listprice != sod.unitprice
and pp.productid = 749
    ;

1 Ответ

0 голосов
/ 23 октября 2018

Это действительно бухгалтерский вопрос.Прайс-лист, без каких-либо дополнительных атрибутов, как правило, является «текущей» ценой на данный момент.Это значение обычно меняется со временем.Когда вы продаете (или покупаете) что-то, вы фиксируете цену каждого проданного товара (а также другую информацию) с подробностями каждой продажи - это цена, которую вы найдете в таблице SOD.Зачем?По очень важным причинам бухгалтерского учета.

Так что нет - вы ничего не упускаете.Кстати, вы заметили таблицу с именем ProductListPriceHistory?Итак, еще раз - разница, которую вы видите, является текущим (или «сейчас») фактом по сравнению с историческим фактом.

Наконец, не ожидайте, что образец базы данных будет полностью согласован по отношению ко всей информации, которую он содержит.Пример базы данных был создан для демонстрации различных функций сервера SQL и в качестве учебной платформы.FWIW эта база данных довольно устарела.MS разработала WorldWideImporters в качестве замены.

...