sql的sum函数(与group by,having子句混合使用)
2013-12-31 17:43
302 查看
SELECT Customer,SUM(OrderPrice) FROM Orders
WHERE Customer='Bush' OR Customer='Adams'
GROUP BY Customer
HAVING SUM(OrderPrice)>1500
Select sum(downloads) as download from factdownloads_new
where date_time='2013-12-11' and storename='anzhi'
结果:3595443702 3253205502 3631413902 3342157901
用别名as:
Select sum(downloads) from factdownloads_new
where date_time='2013-12-11' and storename='hiapk'
结果:8937649006 8927173006 8952359006 8978768006
sum函数
引自:http://www.w3school.com.cn/sql/sql_groupby.asp
现在,我们希望查找每个客户的总金额(总订单)。
我们想要使用 GROUP BY 语句对客户进行组合。
我们使用下列 SQL 语句:
结果集类似这样:
sum与having一起使用
过滤数据结果:HAVING 子句筛选满足条件的结果集
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用
这个 "Orders" 表:
现在,我们希望查找订单总金额少于 2000 的客户。
我们使用如下 SQL 语句:
结果集类似:
现在我们希望查找客户 "Bush" 或 "Adams" 拥有超过 1500 的订单总金额。
我们在 SQL 语句中增加了一个普通的 WHERE 子句:
结果集:
更多0
WHERE Customer='Bush' OR Customer='Adams'
GROUP BY Customer
HAVING SUM(OrderPrice)>1500
Select sum(downloads) as download from factdownloads_new
where date_time='2013-12-11' and storename='anzhi'
结果:3595443702 3253205502 3631413902 3342157901
用别名as:
Select sum(downloads) from factdownloads_new
where date_time='2013-12-11' and storename='hiapk'
结果:8937649006 8927173006 8952359006 8978768006
sum函数
引自:http://www.w3school.com.cn/sql/sql_groupby.asp
SQL GROUP BY 实例
我们拥有下面这个 "Orders" 表:O_Id | OrderDate | OrderPrice | Customer |
---|---|---|---|
1 | 2008/12/29 | 1000 | Bush |
2 | 2008/11/23 | 1600 | Carter |
3 | 2008/10/05 | 700 | Bush |
4 | 2008/09/28 | 300 | Bush |
5 | 2008/08/06 | 2000 | Adams |
6 | 2008/07/21 | 100 | Carter |
我们想要使用 GROUP BY 语句对客户进行组合。
我们使用下列 SQL 语句:
SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer
结果集类似这样:
Customer | SUM(OrderPrice) |
---|---|
Bush | 2000 |
Carter | 1700 |
Adams | 2000 |
过滤数据结果:HAVING 子句筛选满足条件的结果集
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用
这个 "Orders" 表:
O_Id | OrderDate | OrderPrice | Customer |
---|---|---|---|
1 | 2008/12/29 | 1000 | Bush |
2 | 2008/11/23 | 1600 | Carter |
3 | 2008/10/05 | 700 | Bush |
4 | 2008/09/28 | 300 | Bush |
5 | 2008/08/06 | 2000 | Adams |
6 | 2008/07/21 | 100 | Carter |
我们使用如下 SQL 语句:
SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY CustomerHAVING SUM(OrderPrice)<2000
结果集类似:
Customer | SUM(OrderPrice) |
---|---|
Carter | 1700 |
我们在 SQL 语句中增加了一个普通的 WHERE 子句:
SELECT Customer,SUM(OrderPrice) FROM Orders WHERE Customer='Bush' OR Customer='Adams' GROUP BY Customer HAVING SUM(OrderPrice)>1500
结果集:
Customer | SUM(OrderPrice) |
---|---|
Bush | 2000 |
Adams | 2000 |
相关文章推荐
- sql的sum函数(与group by,having子句混合使用)
- 针对GROUP BY 设置限制条件,则不能使用Where 子句,必须使用HAVING 子句来设置。
- group by 及 having 子句使用
- sql语句中having count 和group by的使用
- sql语句中GROUP BY 和 HAVING的使用 count()
- sql语句中GROUP BY 和 HAVING的使用 count()
- group by 及 having 子句使用
- sql语句中GROUP BY 和 HAVING的使用 count()
- [mysql] select的子句 where,group by, having, order by, limit的使用顺序及实例
- SQL语句where,Group By,having order by 的详细使用
- 当WHERE子句、GROUP BY子句和HAVING子句同时出现在一个查询中时,SQL的执行顺序
- SQL语句where,Group By,having order by 的详细使用方法
- SQL HAVING 子句使用
- SQL中GROUP BY语句与HAVING语句的使用
- SQL中Having子句的使用
- (12A)select 五种子句:where、group by (结合统计函数使用)、having
- 【SQL】GROUP BY 和HAVING子句
- sql语句中GROUP BY 和 HAVING的使用
- 黑马程序员之SQL 学习笔记:SQL中group by 和having的使用
- SQL中GROUP BY语句与HAVING语句的使用