-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsql_practice.sql
61 lines (52 loc) · 1 KB
/
sql_practice.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
SELECT
(SELECT COUNT(*) FROM film) AS films,
(SELECT COUNT(*) FROM actor) AS actors
;
SELECT COUNT(*)
FROM address
WHERE postal_code IS NULL;
SELECT first_name
FROM actor
WHERE first_name LIKE 'P%';
SELECT COUNT(*)
FROM actor
WHERE first_name LIKE 'P%' OR first_name LIKE 'A%';
SELECT first_name,
last_name,
COUNT(*) AS count_no
FROM actor
INNER JOIN film_actor
ON actor.actor_id = film_actor.actor_id
GROUP BY 1, 2
ORDER BY count_no DESC
LIMIT 10;
SELECT DISTINCT rating FROM film;
WITH t AS(
SELECT rating,
COUNT(*) AS count_rating,
(SELECT COUNT(*) FROM film) AS total
FROM film
GROUP BY rating
)
SELECT rating,
count_rating,
count_rating/ CAST(total AS REAL) AS ratingPercentage
FROM t ;
SELECT
rating,
COUNT(*) AS Total_count
FROM film
GROUP BY 1;
SELECT
rating,
total_rating,
total_rating/CAST(total_count AS REAL) AS ratingPercent
FROM(
SELECT
rating,
COUNT(*) AS total_rating,
(SELECT COUNT(*) FROM film) AS total_count
FROM film
GROUP BY rating
)
ORDER BY total_rating DESC;