繁体   English   中英

如何重写没有任何子查询的SQL查询?

[英]How can I rewrite a SQL query without any sub-queries?

如何在不使用SQL子查询的情况下重写此查询? 我不太熟悉如何执行此操作,但是我认为可以通过使用“ join”来完成。

SELECT title
FROM Movies Old
Where year < ANY
  (SELECT year
  FROM Movies
  WHERE title = Old. title
  );

(注意:这来自电影关系(标题,年份,长度,类型,工作室名称,制片人C#))

要使用联接从字面上重写当前查询,您可以尝试以下操作:

SELECT m1.title
FROM Movies m1
INNER JOIN Movies m2
    ON m1.title = m2.title AND
       m1.year < m2.year

但是,如果您真正想要的是查找出现多次的电影标题,那么不仅使用GROUP BY查询:

SELECT title
FROM Movies
GROUP BY title
HAVING COUNT(*) > 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM