Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Lakshmi Pritha Nadesan
Lakshmi Pritha Nadesan

Posted on

     

Task 3 - Database

Create cinema table:

employee=# select * from cinema; id |   movie_name    |   actor   | year | minutes ----+-----------------+-----------+------+---------  1 | Dharbar         | Rajini    | 2021 |     121  2 | Vikram          | Kamal     | 2023 |     125  3 | Mersal          | Vijay     | 2020 |     123  4 | Beast           | Vijay     | 2019 |     134  5 | Viswasam        | Ajith     | 2021 |     117  6 | Attakasam       | Ajith     | 2006 |     119  7 | Jai Bhim        | Surya     | 2018 |     127  8 | Kaithi          | Karthi    | 2017 |     125  9 | Ayothi          | Sasikumar | 2023 |     124 10 | Deivathirumagan | Vikram    | 2017 |     121(10 rows)
Enter fullscreen modeExit fullscreen mode

create c_ratings table:

employee=# create table c_ratings(id int,ImDBRating float,FanRating float,CritiqueRating float);CREATE TABLEemployee=# insert into c_ratings values(1,7.2,9.1,7.7),(2,8.1,9.3,7.3),(3,6.5,9.2,7.3),(4,6.2,8.7,6),(5,5.1,6.6,6),(6,7.6,8.8,9),(7,8.9,9.7,9.7),(8,4.5,7,6.5),(9,5.3,6.5,6),(10,8.3,8.7,8.2);INSERT 0 10employee=# select * from c_ratings; id | imdbrating | fanrating | critiquerating ----+------------+-----------+----------------  1 |        7.2 |       9.1 |            7.7  2 |        8.1 |       9.3 |            7.3  3 |        6.5 |       9.2 |            7.3  4 |        6.2 |       8.7 |              6  5 |        5.1 |       6.6 |              6  6 |        7.6 |       8.8 |              9  7 |        8.9 |       9.7 |            9.7  8 |        4.5 |         7 |            6.5  9 |        5.3 |       6.5 |              6 10 |        8.3 |       8.7 |            8.2(10 rows)
Enter fullscreen modeExit fullscreen mode

1) Find ImDB Rating and Critique Rating for each movie:

employee=# select cinema.movie_name, c_ratings.imdbrating, c_ratings.critiquerating from c_ratings inner join cinema on c_ratings.id=cinema.id;   movie_name    | imdbrating | critiquerating -----------------+------------+---------------- Dharbar         |        7.2 |            7.7 Vikram          |        8.1 |            7.3 Mersal          |        6.5 |            7.3 Beast           |        6.2 |              6 Viswasam        |        5.1 |              6 Attakasam       |        7.6 |              9 Jai Bhim        |        8.9 |            9.7 Kaithi          |        4.5 |            6.5 Ayothi          |        5.3 |              6 Deivathirumagan |        8.3 |            8.2(10 rows)
Enter fullscreen modeExit fullscreen mode

2) Find Movies that have better ImDB rating than critique rating:

employee=# select cinema.movie_name, c_ratings.imdbrating, c_ratings.critiquerating from c_ratings inner join cinema on c_ratings.id=cinema.id where c_ratings.imdbrating > c_ratings.critiquerating;   movie_name    | imdbrating | critiquerating -----------------+------------+---------------- Vikram          |        8.1 |            7.3 Beast           |        6.2 |              6 Deivathirumagan |        8.3 |            8.2(3 rows)
Enter fullscreen modeExit fullscreen mode

3) List down all movies based on their ImDB Rating in ascending order:

employee=# select cinema.movie_name,c_ratings.imdbrating from c_ratings inner join cinema on c_ratings.id=cinema.id order by c_ratings.imdbrating;   movie_name    | imdbrating -----------------+------------ Kaithi          |        4.5 Viswasam        |        5.1 Ayothi          |        5.3 Beast           |        6.2 Mersal          |        6.5 Dharbar         |        7.2 Attakasam       |        7.6 Vikram          |        8.1 Deivathirumagan |        8.3 Jai Bhim        |        8.9(10 rows)
Enter fullscreen modeExit fullscreen mode

4) List down all movies for which ImDB rating and Fan Rating are greater than 8:

employee=# select cinema.movie_name, c_ratings.imdbrating, c_ratings.fanrating from c_ratings inner join cinema on c_ratings.id=cinema.id where c_ratings.imdbrating>8 and  c_ratings.fanrating>8;   movie_name    | imdbrating | fanrating -----------------+------------+----------- Vikram          |        8.1 |       9.3 Jai Bhim        |        8.9 |       9.7 Deivathirumagan |        8.3 |       8.7(3 rows)
Enter fullscreen modeExit fullscreen mode

5) List down all movies released in the year 2017,2018 and 2019 and have >8 as ImDB Value:

employee=# select cinema.movie_name,cinema.year, c_ratings.imdbrating from c_ratings inner join cinema on c_ratings.id=cinema.id where c_ratings.imdbrating>8 and cinema.year between 2017 and 2019;   movie_name    | year | imdbrating -----------------+------+------------ Jai Bhim        | 2018 |        8.9 Deivathirumagan | 2017 |        8.3(2 rows)
Enter fullscreen modeExit fullscreen mode

6) List down all movies for which actor name contains the letter ‘j’ and have ImDB rating (>8):

employee=# select cinema.movie_name,cinema.actor, c_ratings.imdbrating from c_ratings inner join cinema on c_ratings.id=cinema.id where c_ratings.imdbrating>8 and cinema.actor='%j%'; movie_name | actor | imdbrating ------------+-------+------------(0 rows)
Enter fullscreen modeExit fullscreen mode

7) List down all movies with less than 7 ImDB and Critique rating released between 2010 – 2020:

employee=# select cinema.movie_name,cinema.year, c_ratings.imdbrating,c_ratings.critiquerating from c_ratings inner join cinema on c_ratings.id=cinema.id where (c_ratings.imdbrating<7 and c_ratings.critiquerating<7) and (cinema.year between 2010 and 2020); movie_name | year | imdbrating | critiquerating ------------+------+------------+---------------- Beast      | 2019 |        6.2 |              6 Kaithi     | 2017 |        4.5 |            6.5(2 rows)
Enter fullscreen modeExit fullscreen mode

8) List down all movies with less than 120 Minutes and have Fan Rating greater than 8.5:

employee=# select cinema.movie_name, cinema.minutes, c_ratings.fanrating from c_ratings inner join cinema on c_ratings.id=cinema.id where c_ratings.fanrating>8.5  and cinema.minutes<120; movie_name | minutes | fanrating ------------+---------+----------- Attakasam  |     119 |       8.8(1 row)
Enter fullscreen modeExit fullscreen mode

9) List down all movies based on their ImDB Rating in descending order and year in ascending:

employee=# select cinema.movie_name,cinema.year,c_ratings.imdbrating from c_ratings inner join cinema on c_ratings.id=cinema.id order by c_ratings.imdbrating desc,cinema.year asc;   movie_name    | year | imdbrating -----------------+------+------------ Jai Bhim        | 2018 |        8.9 Deivathirumagan | 2017 |        8.3 Vikram          | 2023 |        8.1 Attakasam       | 2006 |        7.6 Dharbar         | 2021 |        7.2 Mersal          | 2020 |        6.5 Beast           | 2019 |        6.2 Ayothi          | 2023 |        5.3 Viswasam        | 2021 |        5.1 Kaithi          | 2017 |        4.5(10 rows)
Enter fullscreen modeExit fullscreen mode

10) List down all movies where both Actor name and Movie name starts with same letter with their ImDB value in descending order:

employee=# select cinema.movie_name, cinema.actor, c_ratings.imdbrating from c_ratings inner join cinema on c_ratings.id=cinema.id where left(cinema.actor,1)=left(cinema.movie_name,1) order by c_ratings.imdbrating desc; movie_name | actor  | imdbrating ------------+--------+------------ Attakasam  | Ajith  |        7.6 Kaithi     | Karthi |        4.5(2 rows)
Enter fullscreen modeExit fullscreen mode

Top comments(0)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

I am studying Python Full Stack Developer course
  • Joined

More fromLakshmi Pritha Nadesan

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp