nie wypozyczone ksiazki - zapytanie w sql

0

Majac tabele:
Ksiazki(nrkat,autor,tytuł,rokwydania)
Studenci(pesel,nazwisko,nrtelefonu)
Wypozyczenia(pesel,nrkat,datawyp,datazwrotu)

instrukcja ktora poda autora i tytuł wszystkich ksiązek, które nie zostały jeszcze wypozyczone

select k,autor,k.tytul from ksiazki k join wypozyczenia w
on k.nrkat=w.nrkat
where w.datawyp is null;

Proszę o sprawdzenie ewentualnie wytkniecie błędów

1

Jest OK - jedyny błąd to to że ciągle nie podajesz w tagach bazy w jakiej piszesz i nie formatujesz kodu SQL w postach. I nie zamykasz swoich tematów jak są skończone, a co chwila otwierasz nowe.
Jak ktoś bedzie chcaił Ci pomóc to chyba wolisz żeby się skupił na otwartych tematach gdzie jeszcze nie znasz odpowiedzi, a nie gdzie sprawa jest jasna ?

0

Skoro to działa, to jaki jest sens tracić Twój i nasz czas na tym forum? My nie wiemy jak to ma działać, więc jeśli podajesz działający kod, to i tak nikt Ci nic więcej na jego temat nie powie. Jeśli chcesz coś więcej, to napisz z czym jest problem, czy jakie powinno być prawidłowe działanie.

0

włąsnie nie wiem czy działa, akutalnie przygotowywuje sie do egzaminu i własnie w ten sposob bedą podawane tabele i zapytania,a że aktualnie popsul mi się komputer a nowy bede miec za kilka dni to rozwiązuje to w ten sposób na kartce i prosząc na forum o sprawdzenie czy aby nie błądze.. PS Dziękuje za pomoc

2

To nie zadziała bo książki ktore nie zostały wypożyczone nie będą raczej miały wpisu w wypożyczenia Poszukajooperatorze exists

2

@Tomek Pycia: exists to strzał z armaty, @dcielak to jest analagicznie jak w twoich poprzednich postach. Jeżeli łączysz tabelę, aby zwrócić coś czego nie ma w drugiej (brak wypozyczeń, czyli brak powiązanych rekordów w wypozyczenia) to nigdyinner join nie bedzie odpowiedni zostaje lef/right join:

select k,autor,k.tytul from ksiazki k 
left join wypozyczenia w
on k.nrkat=w.nrkat
where w.datawyp is null;

lub z in

select k,autor,k.tytul from ksiazki k  where nrkat not in (select nrkat from wypozyczenia);

1 użytkowników online, w tym zalogowanych: 0, gości: 1