Adventureworks 加入 sales.store 和 sales.salesorderdetail 以获取商店名称
Adventureworks joining sales.store with sales.salesorderdetail to pull in store name
我正在处理一些 adventureworks 练习查询,但遇到了一些问题。
我正在尝试从 sales.store table 中提取商店名称并将其添加到 sales.salesorderdetail table 这样我就可以看到哪个 "stores" 正在订购特定商品。
我的问题是我似乎无法找到允许我这样做的通用密钥,除非 customerid = businessentityid,我不相信它会。
我想我可以使用 person.person table 来引入它,但由于每个 businessentityid 不一定都有 "person",我认为这行不通。
有没有熟悉 adventureworks 的人帮助我?
select *
from sales.Store
inner join sales.Customer on sales.Store.BusinessEntityID = sales.Customer.StoreID
inner join sales.SalesOrderHeader on sales.Customer.CustomerID = sales.SalesOrderHeader.CustomerID
inner join sales.SalesOrderDetail on sales.SalesOrderHeader.SalesOrderID = sales.SalesOrderDetail.SalesOrderID
要查找关系,请右键单击 SSMS 中的存储 table 并查看依赖项。结果树显示商店通过 Customer 和 SalesOrderHeader 连接到 SalesOrderDetail。
此外,这里的约束条件表明 Store.BusinessEntityID 连接到 Customer.StoreID:
ALTER TABLE [Sales].[Customer] WITH CHECK ADD CONSTRAINT [FK_Customer_Store_StoreID] FOREIGN KEY([StoreID])
REFERENCES [Sales].[Store] ([BusinessEntityID])
GO
select * from
(select * from sales.SalesOrderDetail where year(modifieddate)=2012 and month(modifieddate)=3) as x
left join
(select CustomerID, salesorderid from sales.SalesOrderHeader) as y
on y.SalesOrderID=x.SalesOrderID
left join
(select StoreID, CustomerID from sales.customer) as z
on z.CustomerID=y.CustomerID
left join
(select BusinessEntityID, name from sales.store) as w
on w.BusinessEntityID=z.StoreID
我正在处理一些 adventureworks 练习查询,但遇到了一些问题。
我正在尝试从 sales.store table 中提取商店名称并将其添加到 sales.salesorderdetail table 这样我就可以看到哪个 "stores" 正在订购特定商品。
我的问题是我似乎无法找到允许我这样做的通用密钥,除非 customerid = businessentityid,我不相信它会。
我想我可以使用 person.person table 来引入它,但由于每个 businessentityid 不一定都有 "person",我认为这行不通。
有没有熟悉 adventureworks 的人帮助我?
select *
from sales.Store
inner join sales.Customer on sales.Store.BusinessEntityID = sales.Customer.StoreID
inner join sales.SalesOrderHeader on sales.Customer.CustomerID = sales.SalesOrderHeader.CustomerID
inner join sales.SalesOrderDetail on sales.SalesOrderHeader.SalesOrderID = sales.SalesOrderDetail.SalesOrderID
要查找关系,请右键单击 SSMS 中的存储 table 并查看依赖项。结果树显示商店通过 Customer 和 SalesOrderHeader 连接到 SalesOrderDetail。
此外,这里的约束条件表明 Store.BusinessEntityID 连接到 Customer.StoreID:
ALTER TABLE [Sales].[Customer] WITH CHECK ADD CONSTRAINT [FK_Customer_Store_StoreID] FOREIGN KEY([StoreID])
REFERENCES [Sales].[Store] ([BusinessEntityID])
GO
select * from
(select * from sales.SalesOrderDetail where year(modifieddate)=2012 and month(modifieddate)=3) as x
left join
(select CustomerID, salesorderid from sales.SalesOrderHeader) as y
on y.SalesOrderID=x.SalesOrderID
left join
(select StoreID, CustomerID from sales.customer) as z
on z.CustomerID=y.CustomerID
left join
(select BusinessEntityID, name from sales.store) as w
on w.BusinessEntityID=z.StoreID