Advertisement
Staryy

Questions

Jan 2nd, 2020
279
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 3.27 KB | None | 0 0
  1. /* 1. Wypisz wszystkie potrawy, ich cenę i gramaturę z restauracji znajdujących się w Łodzi. */
  2.  
  3. SELECT d.Nazwa, p.Cena, p.Gramatura, r. Nazwa FROM Restauracje r
  4. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  5. INNER JOIN Dania d ON p.ID_DANIA = d.ID
  6. INNER JOIN MIASTA m ON m.ID = r.ID_MIASTA
  7. WHERE m.Nazwa = 'LODZ'
  8. ORDER BY r.Nazwa;
  9.  
  10. /* 2. Sprawdź w ilu restauracjach podawana jest carbonara. */
  11.  
  12. SELECT COUNT(r.ID) FROM Restauracje r
  13. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  14. INNER JOIN Dania d ON p.ID_DANIA = d.ID
  15. WHERE d.NAZWA = 'Carbonara';
  16.  
  17. /* 3. Sprawdź w skład których dań wchodzi czosnek. */
  18.  
  19. SELECT d.Nazwa, r.Nazwa FROM Restauracje r
  20. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  21. INNER JOIN Dania d ON p.ID_DANIA = d.ID
  22. INNER JOIN SKLADNIKI s ON s.ID_POTRAWY = p.ID
  23. INNER JOIN TYPY_SKLADNIKI ts ON ts.ID = s.ID_TYPY_SKLADNIKI
  24. WHERE ts.NAZWA = 'CZOSNEK'
  25. GROUP BY  d.Nazwa, r.Nazwa, r .ID
  26. ORDER BY r.Nazwa;
  27.  
  28. /* 4. Wypisz wszystkie allergeny i do których możesz dopaduj potrawę. */
  29.  
  30. SELECT ta.nazwa, d.nazwa FROM POTRAWY p
  31. INNER JOIN Alergeny a ON p.ID = a.ID_POTRAWY
  32. INNER JOIN Dania d ON p.ID_DANIA = d.ID
  33. RIGHT OUTER JOIN Typy_alergeny ta ON ta.ID = a.ID_TYPY_ALERGENY
  34.  
  35.  
  36. /* 5. Wypisać restauracje w których dominuje kuchnia włoska i restauracja jest z Łodzi. */
  37.  
  38. SELECT r.Nazwa FROM RESTAURACJE r
  39. LEFT OUTER JOIN DOMINUJACE_KUCHNIE dk ON dk.ID = r.ID_DOMINUJACE_KUCHNIE
  40. INNER JOIN Miasta m ON m.ID = r.ID_MIASTA
  41. WHERE dk.NAZWA = 'WLOSKA' AND m.NAZWA = 'LODZ'
  42. ORDER BY r.NAZWA;
  43.  
  44. /* 6. Wypisz wszystkie potrawy które mają więcej niż 3 składników i z jakiej są restauracji. */
  45.  
  46. SELECT d.Nazwa, r.Nazwa FROM RESTAURACJE r
  47. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  48. INNER JOIN Dania d ON p.ID_DANIA = d.ID
  49. INNER JOIN SKLADNIKI s ON s.ID_POTRAWY = p.ID
  50. GROUP BY d.Nazwa, r.Nazwa
  51. HAVING COUNT(s.ID_TYPY_SKLADNIKI) > 3;
  52.  
  53. /* 7. Posortuj dania malejąca w zależności od ilości alergenów. */
  54.  
  55. SELECT COUNT(ta.ID), d.Nazwa FROM RESTAURACJE r
  56. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  57. INNER JOIN Dania d ON p.ID_DANIA = d.ID
  58. INNER JOIN Alergeny a ON p.ID = a.ID_POTRAWY
  59. LEFT OUTER JOIN Typy_alergeny ta ON ta.ID = a.ID_TYPY_ALERGENY
  60. GROUP BY d.Nazwa,p.ID
  61. ORDER BY COUNT(ta.ID) DESC;
  62.  
  63. /* 8. Wypisz wszystkie dania w których skład wchodzi czosnek i jest więcej niż jeden alrgen. */
  64.  
  65. SELECT COUNT(ta.ID), d.Nazwa FROM RESTAURACJE r
  66. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  67. INNER JOIN Dania d ON p.ID_DANIA = d.ID
  68. INNER JOIN Alergeny a ON p.ID = a.ID_POTRAWY
  69. LEFT OUTER JOIN Typy_alergeny ta ON ta.ID = a.ID_TYPY_ALERGENY
  70. INNER JOIN SKLADNIKI s ON s.ID_POTRAWY = p.ID
  71. INNER JOIN TYPY_SKLADNIKI ts ON ts.ID = s.ID_TYPY_SKLADNIKI
  72. WHERE ts.Nazwa = 'CZOSNEK'
  73. GROUP BY d.Nazwa, p.ID
  74. HAVING COUNT(ta.ID) > 1;
  75.  
  76.  
  77. /* 9. Zlicz ile dań jest oferowanych przez wszystkie restauracje z jednego mista. */
  78.  
  79. SELECT COUNT(p.ID), m.Nazwa FROM RESTAURACJE r
  80. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  81. INNER JOIN Miasta m ON m.ID = r.ID_MIASTA
  82. GROUP BY m.NAZWA;
  83.  
  84. /* 10. Sprawdź w której restauracji średnio zapłaciłbyś najwięcej za jedno danie. */
  85.  
  86. SELECT SUM(p.CENA)/COUNT(p.ID), r.NAZWA FROM RESTAURACJE r
  87. LEFT OUTER JOIN Potrawy p ON p.ID_restauracje = r.ID
  88. GROUP BY r.NAZWA
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement