• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Kwerenda wybierająca tylko tych użytkowników, którze nie występują w drugiej tabeli

0 głosów
40 wizyt
pytanie zadane 10 stycznia w SQL, bazy danych przez użytkownika Q_Nick Obywatel (1,980 punkty)
Pisze sobie program obsługujący bazę kierowców. Mam tabelę z samymi użytkownikami i mam drugą tabelę z pojazdami i przypisanymi do nich kierowcami. Chciałbym zrobić w formularzu z wprowadzaniem nowych pojazdów, aby z listy wybierać tylko tych użytkowników, którzy nie występują w drugiej tabeli. Czy jest to możliwe przez użycie tylko kwerendy w SQL, czy trzeba to robić przy użyciu kodu PHP?

1 odpowiedź

0 głosów
odpowiedź 10 stycznia przez użytkownika Pietrak Stary wyjadacz (12,880 punkty)
wybrane 10 stycznia przez użytkownika Q_Nick
 
Najlepsza
W twoim przypadku przerobiłbym trochę bazę i do kierowców dodał kolumnę z kluczem obcym i możliwą wartością NULL. Wybierasz wtedy wszystkie wiersze z wartością NULL. Po prostu nie będziesz przypisywał kierowcy do pojazdu tylko pojazd do kierowcy.(Jest to możliwe tylko w relacji 1 do 1)

Możesz to zrobić to tak jak piszesz, ale musisz użyć LEFT/RIGHT JOIN oraz odpowiedniego warunku sprawdzającego NULL w tabeli pojazdy.

Sprawa się komplikuje gdy masz relację wiele do wiele.
komentarz 10 stycznia przez użytkownika Q_Nick Obywatel (1,980 punkty)
Właśnie mój kod składa się z wielu plików i nic chcę edytować każdego pliku, który wykorzystuję tą tabele i zależało by mina tym sposobie co opisałem.
komentarz 10 stycznia przez użytkownika Pietrak Stary wyjadacz (12,880 punkty)
komentarz 10 stycznia przez użytkownika Q_Nick Obywatel (1,980 punkty)
Dzięki :D Działa dokładnie tak jak chciałem :D

Podobne pytania

0 głosów
1 odpowiedź 76 wizyt
pytanie zadane 27 grudnia 2016 w PHP, Symfony, Zend przez użytkownika kacperdyba Gaduła (3,300 punkty)
+1 głos
1 odpowiedź 73 wizyt
pytanie zadane 24 września 2016 w SQL, bazy danych przez użytkownika Cezary Kania Nowicjusz (130 punkty)
0 głosów
1 odpowiedź 62 wizyt
pytanie zadane 30 listopada 2016 w SQL, bazy danych przez użytkownika Monika510 Nowicjusz (230 punkty)
...