gpt4 book ai didi

mysql - 如何在 MySQL 中执行具有不同 ID 的计算?

转载 作者:太空宇宙 更新时间:2023-11-03 11:35:29 27 4
gpt4 key购买 nike

不确定如何提出这个问题。基本上我有一张 table :

create table sales (
bookcode int not null,
storecode int not null,
saledate date not null,
quantity int not null,
price decimal,
foreign key (bookcode) references books(bookcode),
foreign key (storecode) references stores(storecode)
);

我在这里要做的是计算每个商店代码的收入。它会将数量乘以价格,这很好,但我不知道如何获得它,所以如果有多个相同的商店代码,它会将它们组合在一起并给出总金额

例如:如果 sales 表中有两家商店的商店代码相同,均为 1,我想获取这两家商店的收入,并将它们显示为该商店代码的总计,而不是分别显示。我该怎么做?

最佳答案

您正在寻找的是 GROUP BY 子句,例如

SELECT storecode, SUM(quantity * price) AS total_sales
FROM sales
GROUP BY storecode;

此子句指示 SQL 引擎将具有相同 storecode 的行组合在一起,然后应用聚合函数来组合每组行的结果。在这种情况下,使用的聚合函数是SUM();其他常见的聚合函数包括 COUNT()AVG()MIN()MAX()GROUP_CONCAT()

请记住,如果您使用的是 GROUP BY 子句,则您选择的每一列都必须是被 GROUP 编辑的值之一 BY,或聚合函数。例如,您不能:

SELECT storecode, saledate FROM sales GROUP BY storecode  /* no! */

因为 saledate 既不是分组依据的列,也不是聚合函数。 (简单来说:有多个销售日期,查询引擎应该给你哪个?)

关于mysql - 如何在 MySQL 中执行具有不同 ID 的计算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46384214/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com