gpt4 book ai didi

sql - 在简单的 SQL 查询中级联选择

转载 作者:搜寻专家 更新时间:2023-10-30 20:27:32 24 4
gpt4 key购买 nike

假设我们在数据库中有以下关系:

likes(moviefanname, movietitle) 将粉丝与他们喜欢的电影联系起来,其关键是 2 个属性的组合。假设moviefanname和movietitle都是字符串。
shows(cinema, movietitle, ticketprice) 指示每个电影院放映的电影以及费用。它的关键是前两个属性的组合。假设 cinema 是一个字符串,ticketprice 是一个整数。

我想找到至少放映一部 Fred 喜欢的成本低于 8 美元的电影的电影院。

我创建的查询如下:

select cinema 
from (
select *
from (
select tmp1.movietitle
from likes tmp1, shows tmp2
where moviefanname = 'Fred' and tmp1.movietitle = tmp2.movietitle) as foo
where ticketprice < 8) as foo2) as foo3

首先,我加入了 2 个表,它们的共同属性将 moviefanname 限制为“Fred”。然后我只保留票价为 8 或以下的元组,最后我做了一个投影,只保留那些电影院的名称。我试图在 pgadmin SQL 编辑器中执行它但没有成功,因为它显示第 8 行的列 ticketprice 不存在的错误。所以,我想问一下逻辑是否正确,我很乐意了解为什么会出现这个错误。

最佳答案

尝试

select distinct cinema 
from likes
inner join shows on
likes.movietitle = shows.movietitle
where (moviefanname = 'Fred') and (ticketprice < 8)

关于sql - 在简单的 SQL 查询中级联选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24412129/

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