SQL 查询 - Having 子句

SQL Query - Having Clause

这是我的数据库关系:

节目(节目 ID、标题、premiere_year、网络、创作者、类别)

剧集(节目 ID、剧集 ID、播放日期、标题)

演员(actID, fname, lname)

recurring_cast(showID, episodeID, actorID, role)

客户(custID, fname, lname, email, creditcard,membersince,renewaldate, password, username)

cust_queue(custID, showID, datequeued)

已观看(custID、showID、episodeID、datewatched) - custID 是客户的外键 - showID 是节目的外键 - (showID, episodeID) 是剧集的外键 - (custID, showID) 是 cust_queue

的外键

所有'IDs'都是主键


有人问我一些问题,我遇到了问题。 其中之一涉及 HAVING 子句。 查询是:

找出有多少节目的剧集在标题中包含单词 "good"?

我假设我必须使用 COUNT 和 HAVING 子句。但我的语法总是关闭。有人帮忙吗?!!我最近的尝试是这样的:

SELECT Shows, COUNT(Episode)
FROM Shows, Episode
WHERE Shows.showid = Episode.showID
GROUP BY Shows
HAVING (Episode.title = 'good');

您需要使用 'LIKE' 然后是通配符

... WHERE title LIKE '%good%'

每一端的 % 将查找包含单词 'good' 的所有标题。

特别是对于您的查询,如果我正确理解您的数据库示意图,下面的查询应该可以找到所有包含单词 'good' 的剧集

SELECT COUNT(*) FROM Episode WHERE title LIKE '%good%'