gpt4 book ai didi

SQL 查询不存在,存在

转载 作者:行者123 更新时间:2023-12-01 04:03:47 26 4
gpt4 key购买 nike

模式

Movie(title, year, director, budget, earnings)
Actor(stagename, realname, birthyear)
ActedIn(stagename, title, year, pay)
CanWorkWith(stagename, director)

我需要找到所有从未在盈利的电影中工作过的 Actor (艺名和实名)(收入 > 预算)。所以找到所有的坏 Actor :P
SELECT A.stagename, A.realname
FROM Actor A
WHERE A.stagename NOT IN
(SELECT B.stagename
FROM ActedIN B
WHERE EXIST
(SELECT *
FROM Movie M
WHERE M.earnings > M.budget AND M.title = B.title AND M.year))

这会找到所有艺名没有出现在第二个查询中的 Actor 吗?第二个查询将查找在盈利的电影中出演的所有艺名。

这样对吗?

最佳答案

我想你可以简化一下,见下文:

SELECT DISTINCT A.stagename, A.realname
FROM Actor A
WHERE NOT EXISTS
(SELECT *
FROM Actor B
, Movie M
, ActedIn X
WHERE M.Title = X.Title
AND X.StageName = B.StageName
AND M.earnings > M.budget
AND M.year = X.Year
AND A.StageName = B.StageName)

关于SQL 查询不存在,存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11025567/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com