如何在单个语句中的Northwind数据库的Order Details表中获取每个产品的总销售额?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在单个语句中的Northwind数据库的Order Details表中获取每个产品的总销售额?相关的知识,希望对你有一定的参考价值。

如何在单个语句中的Northwind数据库的Order Details表中获取每个产品的总销售额?

我知道怎么做:

select productid,  UnitPrice * (1 - Discount) * sum(Quantity) 
  from [Order Details]
    group by ProductID,UnitPrice, Discount

我为每个productid获得了多行,然后我可以运行另一个查询来为每个productid获得一个总和。请注意,同一产品的折扣可能不同。

我想在一个SQL语句中完成所有操作。怎么样?

答案

你可以提取你的sum函数来单独地对每一行的价格求和,而不是仅仅总和数量(这应该在数学上是正确的,因为distributive property乘法加法):

SELECT   productid,  SUM(UnitPrice * (1 - Discount) * Quantity)
FROM     [Order Details]
GROUP BY ProductID

以上是关于如何在单个语句中的Northwind数据库的Order Details表中获取每个产品的总销售额?的主要内容,如果未能解决你的问题,请参考以下文章

如何将oracle数据库中的数据如何导入到sqlserver

如何在NorthWind SQL Server上执行聚合?

如何用SQL语句 直接 备份,还原SQL 2000数据库

SqlServer2017安装northwind?

如何使用 PDO 从 PHP 中的单个 select 语句将孩子分配给父母?

如何在python中将单个字符转换为十六进制ascii值