求助,请告诉我这个查询语句的执行过程
select filmname,rating,price,c1.cc frommovie as m1 inner join cc as c1 on c1.cid=m1.cid
where m1.price =
(select MIn(price) from movie as m2
where m1.cid=m2.cid
and m2.rating=
(select max(m3.rating) from movie as m3
where m3.cid=m2.cid
group by m3.cid)
group by m2.cid)
我不理解的地方就是这里的子查询返回的值是多个(我想这个大家可以想象的),为什么可以直接用“=”?
那子查询返回的数据就是一条嘛···
min 是最小的 max 是最大的
怎么会有多条数据呢··· 我觉得关键的好象是
where m3.cid=m2.cid
group by m3.cid
第二个子查询也应该一样 嗯啦···那只返回一条数据
要是有多条的话
你在数据库执行那段代码时就会报错,有相关的错误提示
页:
[1]
