Autor Zpráva
MysqlA
Profil *
Dobrý den, potřeboval bych poradit s dotazem. Mám databázi:

tabulka knihy: id_kniha, nazev

tabulka vypujceno: id_kniha, id_uzivatel

A chci vypsat pouze knihy, které nebyly půjčeny danému uživateli. Zkrátka aby uživatel neviděl svoje vypůjčené knihy, ale bud pouze volné (není záznam v vypujceno) nebo půjčené jiným uzivatelem
Zatím mám takovýhle dotaz:
SELECT id_kniha, nazev from knihy LEFT JOIN vypujceno USING(id_kniha) WHERE id_uzivatel != 1
Ale pořád mi to vypisuje pouze knihy které si vypůjčil jiný uživatel a ty volné nevypíše.
Díky za pomoc
juriad
Profil
Přidej na konec OR id_uzivatel IS NULL, tím vyřešíš ten případ, kdy si knihu nikdo nepůjčil (v takovém případě přece id_uzivatel není vyplněné)
Taps
Profil
MysqlA:
nedávno tu byl podobný dotaz
dotaz na vyhledávani
Kajman
Profil
SELECT k.id_kniha,
       k.nazev
FROM   knihy k
       LEFT JOIN vypujceno v
              ON k.id_kniha = v.id_kniha
                 AND v.id_uzivatel = 1
WHERE  v.id_uzivatel IS NULL 

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0