Valyn

导航

SQL学习之group by

昨天去58同城面试,被问及sql中如何用一条语句查询出同一字段中每个不同值的记录数。由于不常用该类查询,基础知识忘记,完败。今日重温,以作备忘:

 "Orders" 表如下:

O_IdOrderDateOrderPriceCustomer
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

1、我们希望查找每个客户的总金额(总订单)。

可以使用 GROUP BY 语句对客户进行组合。

SQL 语句如下:

SELECT Customer,SUM(OrderPrice) FROM Orders
GROUP BY Customer

2、我们希望查找每个客户的订单数,并按照订单数升序排序

SQL语句如下:

SELECT Customer,count(Customer) FROM Orders
GROUP BY Customer 
ORDER BY count(Customer)

参考http://www.w3school.com.cn/sql/sql_groupby.asp

 

posted on 2013-09-06 19:55  Valyn  阅读(188)  评论(0编辑  收藏  举报