【问题标题】:Can you use only single select to write this query?您可以只使用单选来编写此查询吗?
【发布时间】:2021-12-09 21:07:51
【问题描述】:

问题:找出至少有两位评论者评论过的电影的标题。请编写一个只有 一个 SELECT没有 GROUP BY 的 SQL。

这是一个包含多个选择的查询:

select title,"count(M.mID)" from (select M.title,count(M.mID) from movie M,rating R where M.mID=R.mID GROUP by M.mID) WHERE "count(M.mID)">=2

enter image description here

【问题讨论】:

  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: sqlite join select


【解决方案1】:

如果rating表中有ID之类的列可以区分reviewers,那么你可以对rating进行self join,并join到movie

SELECT DISTINCT m.title
FROM movie m
INNER JOIN rating r1 ON r1.mID = m.mID
INNER JOIN rating r2 ON r2.mID = m.mID AND r2.ID <> r1.ID;

rating 的第二次加入将过滤掉只有 1 个评论者的电影。

【讨论】:

  • 太棒了!非常感谢!真的很有帮助!
猜你喜欢
  • 2018-11-16
  • 1970-01-01
  • 2011-02-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多