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

Problem z zapytaniem SQL

Object Storage Arubacloud
0 głosów
318 wizyt
pytanie zadane 13 września 2019 w SQL, bazy danych przez Michał_Warmuz Mądrala (5,830 p.)

Cześć Mam dwie tabele książki i wypożyczenia. Tabla ksiązki ma klucz obcy ksiazka_id i mam takie pytanie. Jak pobrać wszystkie książki które nie zostały wypożycznone ?

2 odpowiedzi

+1 głos
odpowiedź 13 września 2019 przez Ehlert Ekspert (212,670 p.)
wybrane 13 września 2019 przez Michał_Warmuz
 
Najlepsza

Możesz zrobić tak 

SELECT * FROM ksiazki where id NOT IN (SELECT DISTINCT ksiazka_id FROM wypozyczenia)

Ale imo nie będzie to wydajne. Tak lepiej:

SELECT k.* FROM ksiazki k LEFT JOIN wypozyczenia w ON k.id = w.ksiazka_id WHERE w.id IS NOT NULL;
+1 głos
odpowiedź 13 września 2019 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
Nie wiem co za baze danych masz ale to bedzie chyba cos takiego

select * form ksiazki where id (nie jest rowne) (select ksiazka_id from wypozyczenia)
komentarz 13 września 2019 przez Michał_Warmuz Mądrala (5,830 p.)

Mysql i kiedy próbuje tak: 

select * from ksiazki where ksiazki.id != (select wypozyczenia.ksiazka_id from wypozyczenia)

Mam taki błąd 

Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

Dlaczego ?

komentarz 13 września 2019 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)

Ok czyli chyba to nie przejdzie i musisz zastosować petle


 

Podobne pytania

0 głosów
4 odpowiedzi 385 wizyt
pytanie zadane 14 sierpnia 2018 w SQL, bazy danych przez fipooo Bywalec (2,880 p.)
+2 głosów
1 odpowiedź 175 wizyt
pytanie zadane 23 listopada 2021 w SQL, bazy danych przez DLFDL Początkujący (270 p.)
+1 głos
2 odpowiedzi 320 wizyt

92,582 zapytań

141,433 odpowiedzi

319,666 komentarzy

61,966 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...