我刚开始学sql,在sqlzoo上被几个题目弄糊涂了,不知道是题目理解得不对,还是
syntax不对,出来的结果和正确答案就是不一样。
more join operation里的14和15题
1. 我写的如下。我的理解是同一个演员不可能在一部戏里有两个ord,计算一个演员的
ord次数,就可以知道他/她 starring roles的次数。这个query出来的行数比答案多。
select name from actor join casting
on actor.id=casting.actorid
group by name
having count(ord)>=30
order by name
2. 我写的如下。我的query出来的结果有几行不对,比如答案里有midnight express,
我的结果没有。
select t1.title, count(t3.actorid) from movie t1
join casting t3
on t1.id=t3.movieid
where t1.yr=1978
group by t1.title
order by count(t3.actorid) desc
请各位帮我看看吧,谢谢你们了!
B*****g 发帖数: 34098
2
read question 10 about what is starring roles
【在 m**********4 的大作中提到】 : 我刚开始学sql,在sqlzoo上被几个题目弄糊涂了,不知道是题目理解得不对,还是 : syntax不对,出来的结果和正确答案就是不一样。 : more join operation里的14和15题 : 1. 我写的如下。我的理解是同一个演员不可能在一部戏里有两个ord,计算一个演员的 : ord次数,就可以知道他/她 starring roles的次数。这个query出来的行数比答案多。 : select name from actor join casting : on actor.id=casting.actorid : group by name : having count(ord)>=30 : order by name