SQL GROUP BY用法

2018年01月05日 09:37 | 2597次浏览

合计函数 (比如 SUM) 常常需要添加 GROUP BY 语句。

我们现在回到函数上。记得我们用 SUM 这个指令来算出所有的 Sales (营业额)吧!如果我们的需求变成是要算出每一间店 (Store_Name) 的营业额 (Sales),那怎么办呢?在这个情况下,我们要做到两件事:第一,我们对于 Store_Name 及 Sales 这两个列都要选出。第二,我们需要确认所有的 Sales 都要依照各个 Store_Name 来分开算。这个语法为:

SQL GROUP BY 语法

SELECT "列1", SUM("列2") 
FROM "表名" 
GROUP BY "列1";

SQL GROUP BY 实例

假如我们有订单表,如下

表中有个店名(store_name),销售额度(sales),销售时间(txn_date)三列,现在我们希望查找每个店的总金额(总订单)。

我们想要使用 GROUP BY 语句对店进行组合。

我们使用下列 SQL 语句:

SELECT Store_Name, SUM(Sales) 
FROM Store_Information 
GROUP BY Store_Name;

结果:

Store_Name	SUM(Sales)
Los Angeles	1800
San Diego	250
Boston	        700

当我们选不只一列,且其中至少一列有包含函数的运用时,我们就需要用到 GROUP BY 这个指令。在这个情况下,我们需要确定我们有 GROUP BY 所有其他的列。换句话说,除了有包括函数的列外,我们都需要将其放在 GROUP BY 的子句中。 



小说《我是全球混乱的源头》

感觉本站内容不错,读后有收获?小额赞助,鼓励网站分享出更好的教程