Wyszukanie niepowtarzających się danych Microsoft Access

Wyszukanie niepowtarzających się danych Microsoft Access
BQ
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 25
0

Witam. Naukę SQL zacząłem dosłownie dwa dni temu i mam problem z pewnym zadaniem. W tabeli Meldunek znajdują się numery PESEL osób zameldowanych w akademiku. W tabeli Studenci znajdują się wszyscy studenci(łącznie z tymi,którzy nie mieszkają w akademiku) a każdy ma swój numer PESEL, imię oraz nazwisko. Cały problem polega na wypisaniu imion i nazwisk studentów, którzy nie mieszkają w akademiku. Czy ktoś mógłby napisać instrukcję do wyciągnięcia tych danych? Pozdrawiam. :))

stivens
  • Rejestracja: dni
  • Ostatnio: dni
1

Spróbuj tego
http://stackoverflow.com/a/4197561/6872542

Kopiuj
SELECT *
FROM tbl1
WHERE NOT EXISTS
(
    SELECT *
    FROM tbl2
    WHERE tbl2.col1 = tbl1.col1
        AND tbl2.col2 = tbl1.col2
)

albo tak

Kopiuj
SELECT * FROM studenci WHERE id NOT IN (SELECT student_id FROM meldunek)
Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
2

LEFT JOIN z Nullem. Najprostsze. Najlepsze.

BQ
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 25
0

Dzięki bardzo za odpowiedzi! :) Drugi pomysł stivens'a taki prosty i zrozumiały. Super. :) Korzystując z okazji, jakby wyglądało złączenie z LEFT JOIN'em? Kombinowałem sam,ale nie mogę wymyśleć,gdzie dać warunek IS NULL.

Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
2
Kopiuj
SELECT s.* FROM Studenci As s LEFT OUTER JOIN Meldunek As m On m.PESEL = s.PESEL WHERE m.PESEL IS NULL
BQ
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 25
0

Jeszcze raz dzięki za odpowiedzi,oba polecenia działają tak jak powinny. :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.