MYSQL视图groupby

时间:2016-04-30 23:25:46

标签: mysql

Below is the cutomerOrdersByName View: 
# Returns total for each order ordered from largest to smallest.

DROP VIEW IF EXISTS customerOrdersByName;

CREATE VIEW customerOrdersByName AS
    SELECT d.orderNumber
         , customerName
         , round(SUM(quantityOrdered * priceEach),2) total
      FROM orderDetails d
INNER JOIN orders o ON o.orderNumber = d.orderNumber
INNER JOIN customers c ON c.customerNumber = o.customerNumber
  GROUP BY customerName
  ORDER BY total DESC;

如何修改customerOrdersByName视图,以便按客户名称对总计进行分组和排序,然后按总计从最高到最低排序?

1 个答案:

答案 0 :(得分:1)

通过修改order by子句:

GROUP BY customerName
ORDER BY customerName asc, total DESC;

但是,我没有在选择列表中获得订单号。如果您没有对其进行分组,则还应将其从选择列表中删除。