-
Notifications
You must be signed in to change notification settings - Fork 0
/
More JOIN operations.sql
172 lines (77 loc) · 2.54 KB
/
More JOIN operations.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
Q1.
List the films where the yr is 1962 [Show id, title]
SELECT id, title
FROM movie
WHERE yr=1962 ;
Q2.
When was Citizen Kane released?
select yr
from movie
where title = 'Citizen Kane' ;
Q3.
List all of the Star Trek movies, include the id, title and yr (all of these movies include the words Star Trek in the title). Order results by year.
select id, title,yr
from movie
where title LIKE 'Star Trek%'
order by yr ;
Q4.
What id number does the actor 'Glenn Close' have?
select id from actor
where name = 'Glenn Close' ;
Q5.
What is the id of the film 'Casablanca'
select id from movie where title = 'Casablanca' ;
Q6.
Obtain the cast list for 'Casablanca'.
SELECT name
FROM casting, actor
WHERE movieid=(SELECT id
FROM movie
WHERE title='Casablanca')
AND actorid=actor.id ;
Q7.
Obtain the cast list for the film 'Alien'
SELECT name FROM
movie JOIN casting ON movie.id=movieid
JOIN actor ON actorid=actor.id
WHERE movie.title='Alien' ;
Q8.
List the films in which 'Harrison Ford' has appeared
SELECT title FROM
movie JOIN casting ON movie.id=movieid
JOIN actor ON actorid=actor.id
WHERE actor.name='Harrison Ford' ;
Q9.
List the films where 'Harrison Ford' has appeared - but not in the starring role.
select title from movie
JOIN casting ON movie.id=movieid
JOIN actor ON actorid=actor.id
where name = 'Harrison Ford' and NOT ord = 1 ;
Q10.
List the films together with the leading star for all 1962 films.
select title, name from movie
JOIN casting ON movie.id=movieid
JOIN actor ON actorid=actor.id
where yr = 1962 and ord = 1 ;
Q11.
Which were the busiest years for 'Rock Hudson', show the year and the number of movies he made each year for any year in which he made more than 2 movies.
Q12.
List the film title and the leading actor for all of the films 'Julie Andrews' played in.
SELECT title, name FROM movie
JOIN casting ON (movie.id=movieid AND ord = 1)
JOIN actor ON actorid=actor.id
where movie.id IN (
select movieid FROM casting
WHERE actorid IN (
select id from actor
where name = 'Julie Andrews' )) ;
Q13.
Obtain a list, in alphabetical order, of actors who've had at least 15 starring roles.
select name from movie
JOIN casting ON movie.id=movieid
JOIN actor ON actorid=actor.id
where ord=1
group by name
having count(movieid)>=15 ;
Q14.
List the films released in the year 1978 ordered by the number of actors in the cast, then by title.