Advertisement
GamerBhai02

DBMS EXP 8

May 15th, 2025
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 3.06 KB | Source Code | 0 0
  1. create table actor (act_id integer primary key, act_name varchar(20), act_gender char(1));
  2. create table director (dir_id integer primary key, dir_name varchar(20), dir_phone varchar(20));
  3. create table movies (mov_id integer primary key, mov_title varchar(25), mov_year integer, mov_lang varchar(15), dir_id integer, foreign key (dir_id) references director (dir_id));
  4. create table movie_cast (act_id integer, mov_id integer, role varchar(10), primary key (act_id, mov_id), foreign key (act_id) references actor (act_id), foreign key (mov_id) references movies (mov_id));
  5. create table rating (mov_id integer primary key, rev_stars varchar(25), foreign key (mov_id) references movies (mov_id));
  6. insert into actor (act_id, act_name, act_gender) values
  7. (101, 'Rahul', 'M'),(102, 'Ankitha', 'F'),(103, 'Radhika', 'F'),
  8. (104, 'Chethan', 'M'),(105, 'Vivan', 'M');
  9. insert into director (dir_id, dir_name, dir_phone) values
  10. (201, 'Anoop', '9181818181'),(202, 'Hitchcock', '9181818182'),
  11. (203, 'Shashank', '9181818183'),(204, 'Steven Spielberg', '9181818184'),
  12. (205, 'Anand', '9181818185');
  13. insert into movies (mov_id, mov_title, mov_year, mov_lang, dir_id) values
  14. (1001, 'MANASU', 2017, 'Kannada', 201),(1002, 'AAKASHAM', 2015, 'Telugu', 202),
  15. (1003, 'KALIYONA', 2008, 'Kannada', 201),(1004, 'WAR HORSE', 2011, 'English', 204),
  16. (1005, 'HOME', 2012, 'English', 205);
  17. insert into movie_cast (act_id, mov_id, role) values
  18. (101, 1002, 'Hero'),(101, 1001, 'Hero'),(103, 1003, 'Heroine'),
  19. (103, 1002, 'Count'),(104, 1004, 'Hero'),(105, 1005, 'Hero');
  20. insert into rating (mov_id, rev_stars) values
  21. (1001, 4),(1002, 3),(1003, 5),(1004, 4),(1005, 3);
  22. select mov_title from movies where dir_id = (select dir_id from director where dir_name = 'Hitchcock');
  23. select m.mov_title from movies m join movie_cast mc on m.mov_id = mc.mov_id group by m.mov_id having count(mc.act_id) >= 2;
  24. select act_name from actor a join movie_cast mc on a.act_id = mc.act_id join movies m on mc.mov_id = m.mov_id where m.mov_year not between 2000 and 2015;
  25. select m.mov_title, max(r.rev_stars) from movies m inner join rating r using (mov_id) group by m.mov_title having max(r.rev_stars) > 0 order by m.mov_title;
  26. update rating set rev_stars = 5 where mov_id in (select mov_id from movies where dir_id in (select dir_id from director where dir_name = 'Steven Spielberg'));
  27. select * from rating;
  28.  
  29. Output:
  30.  
  31. +-----------+
  32. | mov_title |
  33. +-----------+
  34. | AAKASHAM  |
  35. +-----------+
  36. +-----------+
  37. | mov_title |
  38. +-----------+
  39. | AAKASHAM  |
  40. +-----------+
  41. +----------+
  42. | act_name |
  43. +----------+
  44. | Rahul    |
  45. +----------+
  46. +-----------+------------------+
  47. | mov_title | max(r.rev_stars) |
  48. +-----------+------------------+
  49. | AAKASHAM  | 3                |
  50. | HOME      | 3                |
  51. | KALIYONA  | 5                |
  52. | MANASU    | 4                |
  53. | WAR HORSE | 4                |
  54. +-----------+------------------+
  55. +--------+-----------+
  56. | mov_id | rev_stars |
  57. +--------+-----------+
  58. |   1001 | 4         |
  59. |   1002 | 3         |
  60. |   1003 | 5         |
  61. |   1004 | 5         |
  62. |   1005 | 3         |
  63. +--------+-----------+
Tags: Exp 8
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement