SQL 使用HAVING子句过滤GROUP BY结果
示例
HAVING子句过滤GROUP BY表达式的结果。注意:以下示例使用的是Library示例数据库。
例子:
返回写了不止一本书的所有作者(在线示例)。
SELECTa.Id,
a.Name,
COUNT(*) BooksWritten
FROM BooksAuthors ba
INNER JOIN Authors a ONa.id= ba.authorid
GROUP BY
a.Id,
a.Name
HAVING COUNT(*) > 1 -- equals to HAVING BooksWritten > 1
;
返回作者超过三名的所有书籍(实时示例)。
SELECTb.Id,
b.Title,
COUNT(*) NumberOfAuthors
FROM BooksAuthors ba
INNER JOIN Books b ONb.id= ba.bookid
GROUP BY
b.Id,
b.Title
HAVING COUNT(*) > 3 -- equals to HAVING NumberOfAuthors > 3
;
以上是 SQL 使用HAVING子句过滤GROUP BY结果 的全部内容, 来源链接: utcz.com/z/340653.html