跟我讀MySQL官方文檔——MySQL處理GROUP BY


跟我讀MySQL官方文檔——MySQL處理GROUP BY


說明

本文大部分內容是根據原文檔內容翻譯,按照個人的理解做了排版。

MySQL版本

5.7

原文地址

https://dev.mysql.com/doc/refman/5.7/en/group-by-handling.html

內容

SQL-92和更早版本不允許選擇列表,HAVING條件或ORDER BY列表引用未在GROUP BY子句中命名的未聚合列的查詢。例如,此查詢在標準SQL-92中是非法的,因為選擇列表中的未聚合名稱列未出現在GROUP BY中:

<code>SELECT o.custid, c.name, MAX(o.payment)
  FROM orders AS o, customers AS c
  WHERE o.custid = c.custid
  GROUP BY o.custid;/<code>

為了使查詢在SQL-92中合法,必須從選擇列表中省略name列或在GROUP BY子句中命名。


分享到:


相關文章: