University stuff.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

oppgave.txt 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. 1.
  2. SELECT filmcharacter, COUNT(*)
  3. FROM filmcharacter
  4. GROUP BY filmcharacter
  5. HAVING COUNT(*) > 800
  6. ORDER BY COUNT(*) DESC;
  7. 2.
  8. SELECT P.personid, P.lastname
  9. FROM person P, filmcharacter FC
  10. WHERE P.firstname = 'Ingrid'
  11. AND FC.filmcharacter = 'Ingrid';
  12. 3.
  13. SELECT P.firstname, P.lastname, FC.filmcharacter, F.title
  14. FROM person P, filmcharacter FC, filmparticipation FP, film F
  15. WHERE FP.partid = FC.partid
  16. AND FP.personid = P.personid
  17. AND F.filmid = FP.filmid
  18. AND P.personid = 3924169;
  19. 4.
  20. SELECT P.personid, P.firstname, P.lastname, COUNT(*)
  21. FROM person P, filmcharacter FC, filmparticipation FP
  22. WHERE FP.partid = FC.partid
  23. AND FP.personid = P.personid
  24. AND FC.filmcharacter = 'Ingrid'
  25. GROUP BY P.personid, P.firstname, P.lastname
  26. ORDER BY COUNT(*) DESC
  27. LIMIT 1;
  28. 5.
  29. SELECT P.personid, P.firstname, P.lastname, FC.filmcharacter
  30. FROM person P, filmcharacter FC, filmparticipation FP
  31. WHERE FP.partid = FC.partid
  32. AND FP.personid = P.personid
  33. AND FC.filmcharacter = P.firstname
  34. GROUP BY P.personid, P.firstname, P.lastname, FC.filmcharacter
  35. ORDER BY COUNT(*) DESC
  36. LIMIT 1;
  37. 6.
  38. SELECT F.title, FP.parttype, COUNT(*)
  39. FROM film F, filmitem FI, filmparticipation FP
  40. WHERE F.title LIKE 'Lord of the Rings%'
  41. AND F.filmid = FI.filmid
  42. AND FP.filmid = F.filmid
  43. AND FI.filmtype = 'C'
  44. GROUP BY F.title, FP.parttype, F.filmid
  45. ORDER BY F.title DESC;
  46. 7.
  47. SELECT F.title
  48. FROM film F, filmgenre FG
  49. WHERE genre IN ('Film-Noir', 'Comedy')
  50. AND F.filmid = FG.filmid
  51. GROUP BY F.filmid, F.title
  52. HAVING COUNT(*) = 2
  53. ORDER BY F.title;
  54. 8.
  55. WITH rolle AS (
  56. SELECT filmcharacter
  57. FROM filmcharacter
  58. GROUP BY filmcharacter
  59. HAVING count(*) = 1
  60. )
  61. SELECT P.firstname || ' ' || P.lastname
  62. AS name, count(*)
  63. FROM person P
  64. INNER JOIN filmparticipation FP ON P.personid = FP.personid
  65. INNER JOIN filmcharacter FC ON fp.partid = FC.partid
  66. INNER JOIN rolle R ON FC.filmcharacter = R.filmcharacter
  67. GROUP BY P.firstname, P.lastname HAVING count(*) > 199;