将项目价格相加以获得总计
Posted
技术标签:
【中文标题】将项目价格相加以获得总计【英文标题】:Adding up item prices to get total 【发布时间】:2008-10-23 16:58:39 【问题描述】:我已经开始创建一个数据库,并且我有一个“订购商品”和一个“发票”表。我想知道如何将客户挑选的商品的价格相加。以及您将这个“规则”放在数据库的什么位置。
【问题讨论】:
添加一些细节会大有帮助。你需要在哪里总结?你打算如何显示这个总和?您是否将总和值存储在某处? 【参考方案1】:您需要 SQL“Sum()”函数。例如,看here。
【讨论】:
【参考方案2】:我必须做出很多假设(最大的假设是您使用的是 MS SQL),因为您的帖子缺乏细节,但我会尝试一下。如果此设置未关闭,请发布表格创建和一些示例数据供我们使用。这对我们有很大帮助。
declare @Item table (ItemId int, ItemDesc varchar(50), Price money)
declare @Invoice table (InvoiceId int, CustomerName varchar(50), ShipDate datetime)
declare @OrderedItem table (InvoiceId int, ItemId int, Quantity int)
insert into @Item
select 1, 'Hat', '10.99' union
select 2, 'Shirt', '12.50' union
select 3, 'Belt', '5.99'
insert into @Invoice
select 1, 'Nathan', '01-01-2009'
insert into @OrderedItem
select 1, 1, 2 union -- 2 hats
select 1, 2, 3 -- 3 shirts
select i.InvoiceId,
sum(Quantity) [TotalItems],
sum(Price * Quantity) [TotalPrice]
from @Invoice i
inner
join @OrderedItem oi on
i.InvoiceId = oi.InvoiceId
inner
join @Item it on
oi.ItemId = it.ItemId
group
by i.InvoiceId
【讨论】:
【参考方案3】:您会在每个 Access 版本附带的 Northwind 示例数据库中找到很多有用的示例,它也可以是 downloaded from here。我想你会找到订单、销售分析表和特定兴趣的发票报告。
【讨论】:
【参考方案4】:基本上,您会进行查询并使用该查询的结果填充发票表。正如 Coderer 所说,使用 sum() 函数。如果您使用图形查询编辑器,则需要启用总计(查看->总计),然后将总计类型设置为“Sum”而不是默认的“Group By”
【讨论】:
【参考方案5】:如果您使用的是 MS Access,则 SUM 函数通常用作显示字段之一的报告的一部分。
【讨论】:
【参考方案6】:SQL 这种语言只有一种数据结构是表。因此,您可以将用户选择的商品放入一个表中,然后从该表连接到包含价格的表,然后使用集合函数 SUM() 获取总价格。听起来您对 SQL 语言不太熟悉,如果您确实在使用 MS Access,那么它有向导可以提供帮助:它将这种构造称为“总计查询”。
【讨论】:
以上是关于将项目价格相加以获得总计的主要内容,如果未能解决你的问题,请参考以下文章