Advertisement
Guest User

Untitled

a guest
Apr 19th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.29 KB | None | 0 0
  1. Przykłady do ćwiczeń - lab 3 - złączenia wewnetrzne
  2. 3.1 PRZYKŁADY (zapytania do wielu tabel:, JOIN .. ON, JOIN .. USING) - złączenia wewnętrzne
  3.  
  4. 3.1.1 Zapytanie do dwóch tabel, np.
  5. Wyświetl nazwy działów(department_name) oraz miasta (city), w których się znajdują (tabele departments oraz locations)
  6.  
  7. - bez klauzuli JOIN:
  8. SELECT d.department_name, l.city FROM departments d, locations l WHERE d.location_id=l.location_id;
  9.  
  10. - wykorzystując klauzulę JOIN .. ON:
  11. SELECT d.department_name, l.city FROM departments d JOIN locations l ON d.location_id=l.location_id;
  12.  
  13. - wykorzystując klauzulę JOIN .. USING:
  14. SELECT department_name, city FROM departments JOIN locations USING (location_id);
  15.  
  16. 3.1.2. Zapytanie do więcej, niż dwóch tabel, np.
  17. Wyświetl nazwy działów (department_name) oraz miasta (city) i państwa (country_name), w których się znajdują (tabele departments, locations oraz countries)
  18.  
  19. - bez klauzuli JOIN:
  20. SELECT d.department_name, l.city, c.country_name FROM departments d, locations l, countries c WHERE d.location_id=l.location_id AND l.country_id=c.country_id;
  21.  
  22. - wykorzystując klauzulę JOIN .. ON:
  23. SELECT d.department_name, l.city, c.country_name FROM departments d JOIN locations l ON d.location_id=l.location_id JOIN countries c ON l.country_id=c.country_id;
  24.  
  25. - wykorzystując klauzulę JOIN .. USING: SELECT department_name, city, country_name FROM departments JOIN locations USING (location_id) JOIN countries USING (country_id);
  26.  
  27.  
  28.  
  29. 3.2 PRZYKŁADY LAB 10 [NATURAL JOIN, OUTER JOIN] - złączenia zewnętrzne
  30.  
  31.  
  32. NATURAL JOIN - klauzula, która automatycznie wybiera kolumnę, po której chcemy łączyć tabele, na podstawie nazwy (uwaga! jeśli kilka kolumn ma takie same nazwy, łączenie odbywa się po wszystkich kolumnach!) ,
  33. np. Wyświetl nazwy departamentów (department_name) i miasta (city), w których się znajdują wykorzystując klauzulę NATURAL JOIN (tabele departments oraz locations)
  34.  
  35. SELECT department_name, city FROM departments NATURAL JOIN locations
  36.  
  37.  
  38. Jeśli złączenie dwóch tabel powinno zostać wykonane na wszystkich kolumnach wspólnych dla obu tabel (o takich samych nazwach), a złączenie ma charakter równozłączenia, można używać słów kluczowych NATURAL JOIN, bez definiowania warunku złączenia.
  39.  
  40. Złączenie zewnętrzne - jest typem złączenia, w którym każdy wiersz zbioru wynikowego nie musi zawierać wierszy pochodzących z obydwu tabel objętych złączeniem.
  41. Złączenie zewnętrzne należny stosować w przypadku, gdy złączenie powinno zostać wykonane, jeśli tylko jest to możliwe i gdy - bez względu na to, czy zostało wykonane, czy nie - powinny zostać zwrócone pewne wiersze.
  42.  
  43.  
  44.  
  45. LEFT / RIGHT / FULL OUTER JOIN - klauzula, która wyświetla z tabeli po stronie lewej (LEFT), prawej (RIGHT) lub obu stronach łączenia OUTER JOIN również te wartości, które nie mają odpowiednika w przeciwległej tabeli,
  46. np. Wyświetl nazwy departamentów (department_name) i wszystkie miasta (city), w których mogą się znajdować (tabele departments oraz locations)
  47.  
  48. SELECT department_name, city
  49.  
  50. FROM departments RIGHT OUTER JOIN locations
  51.  
  52. USING(location_id)
  53.  
  54.  
  55.  
  56.  
  57.  
  58. Kolejności słów kluczowych !
  59.  
  60. SELECT -> FROM -> JOIN -> JOIN .. -> WHERE -> GROUP BY -> HAVING
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement