首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建发票的表视图- Northwind

创建发票的表视图- Northwind
EN

Stack Overflow用户
提问于 2018-04-27 07:18:37
回答 1查看 899关注 0票数 1

我的最后一项任务有点问题。我正在使用一个旧的Northwind数据库。首先,我必须创建一个查询,这将为我提供发票的所有重要信息。我的查询如下:

代码语言:javascript
复制
SELECT       b.OrderID, 
             b.CustomerID, 
            c.CompanyName, 
            c.Address, 
            c.City,  
            c.PostalCode, 
            c.CountryID as CustomersCountryID, 
            concat(d.FirstName,  ' ', d.LastName) as Salesperson,   
            a.CompanyName as ShippingVia, 
            e.ProductID, 
            f.ProductName, 
            e.Quantity, 
            e.UnitPrice * e.Quantity * (1 - e.Discount) as ExtendedPrice
from Shippers a 
inner join Orders b on a.ShipperID = b.ShipVia 
inner join Customers c on c.CustomerID = b.CustomerID
inner join Employees d on d.EmployeeID = b.EmployeeID
inner join [Order Details] e on b.OrderID = e.OrderID
inner join Products f on f.ProductID = e.ProductID
order by b.OrderID

它起作用了,它给了我所有的命令与信息。但是现在,我需要为特定OrderId的发票创建一个表视图。当我写这样的东西时:

代码语言:javascript
复制
CREATE VIEW FAKTURA AS
SELECT       b.OrderID, 
             b.CustomerID, 
            c.CompanyName, 
            c.Address, 
            c.City,  
            c.PostalCode, 
            c.CountryID as CustomersCountryID, 
            concat(d.FirstName,  ' ', d.LastName) as Salesperson,   
            a.CompanyName as ShippingVia, 
            e.ProductID, 
            f.ProductName, 
            e.Quantity, 
            e.UnitPrice * e.Quantity * (1 - e.Discount) as ExtendedPrice
from Shippers a 
inner join Orders b on a.ShipperID = b.ShipVia 
inner join Customers c on c.CustomerID = b.CustomerID
inner join Employees d on d.EmployeeID = b.EmployeeID
inner join [Order Details] e on b.OrderID = e.OrderID
inner join Products f on f.ProductID = e.ProductID
WHERE b.OrderID = 10248

我只是为这个特定的OrderID创建一个单独的视图文件。这看起来一点也不像现实生活的发票。

它应该是这样的:

我需要将有关发票和客户的一般数据与订单本身、产品ID、数量等数据分开。是否可以在中创建类似的内容?我该怎么做呢?

EN

回答 1

Stack Overflow用户

发布于 2018-04-27 08:36:14

您的查询已经提供了头(客户信息)和表体部件,所以您可以做的是(注意:这不是我要做的,而是考虑到需要一个非常简单的解决方案):

  1. 短语查询,该查询将根据发票号对尾随部分执行所有所需的计算(这可以与您已有的类似,但它将对金额、计算税收和运输成本进行汇总),
  2. 一旦您准备好该查询,内部将其加入到您已经拥有的查询(使用发票ID作为键);请注意,您必须将附加字段添加到顶部选择列表中。

结果将是您已经拥有的小计,税,航运和总额在每一项记录。

同样,这不是最有效和最优雅的解决方案,但符合您的需要(简单性和最终结果)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50057291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档