Ostatnią operacją na zbiorach jaką w najbliższym czasie chcę pokazać jest iloczyn. Bardziej zrozumiałą nazwą tej operacji jest część wspólna. Jeśli mamy bazę, w której spisujemy w osobnych tabelach zakupy każdego z domowników, to za pomocą iloczynu zbiorów możemy sprawdzić jakie artykuły są kupowane przez każdego. Tradycyjnie zacznę od teorii

iloczyn

Iloczyn zbiorów A i B to zbiór tylko tych elementów, które jednocześnie należą do zbioru A i do zbioru B.

Access

Iloczyn zbiorów jest najprostszą do uzyskania operacją na zbiorach spośród tych, które opisałem. Wystarczy stworzyć kwerendę wybierającą lub tworzącą (w zależności czy chcemy tworzyć nową tabelkę, czy nie). Przeciągamy obie tabele z których będziemy wyciągali część wspólną. Łączymy wszystkie pola ze sobą i z jednej tabelki gwiazdkę przeciągamy na dolną siatkę. Tyle 🙂

SQL

Do wyznaczania części wspólnej zbiorów używamy słowa kluczowego INTERSECT. Za jego pomocą łączymy dwa SELECTy ze sobą

SELECT NazwaProduktu FROM ZakupyAni
INTERSECT
SELECT NazwaProduktu FROM ZakupyJana

Takie zapytanie zwraca nam część wspólną obu zbiorów. W tym przypadku dużo lepsze jest zastosowanie INNER JOIN i w klauzurze ON wypisanie wszystkich pól z obu tabel. Będzie to wydajniejsze i na pewno bardziej zrozumiałe dla większej ilości osób, bo któż zna i używa tak egzotyczny operator jak INTERSECT?

Dołącz do newslettera już dziś!
Zero spamu - tylko wartościowe treści!
Musisz już lecieć?
Zostaw swój adres e-mail i dołącz do BEZPŁATNYCH WEBINARÓW dotyczących SQLa!
  • „Jak uczyć się SQLa?” – 4 października
  • „SQL dla testerów” – 12 października