P°φklad 11
Zadßnφ: Vyberte ty faktury, kterΘ nejsou zaplacenΘ
SQL:
SELECT *
FROM Faktury
WHERE (Faktury.zaplaceno IS NULL)
Poznßmka:
a) Operßtor IS NULL
se pou₧φvß prßv∞ v takov²chto p°φkladech: vybrat ty zßznamy, v nich₧ n∞kter² sloupec je nebo nenφ vypln∞n.
b) Pokud bychom cht∞li tuto podmφnku obrßtit (negovat), lze pou₧φt dva ekvivalentnφ zßpisy: WHERE (Faktury.zaplaceno IS NOT NULL)
nebo WHERE NOT (Faktury.zaplaceno IS NULL)
.
P°φklad 12
Zadßnφ: Vytvo°te dotaz, kter² zjistφ nezaplacenΘ faktury odb∞ratel∙ a vypoΦφtß penßle k dneÜnφmu dni. Lh∙ta na zaplacenφ nech¥ je 14 dnφ, penßle je 1% z ceny za ka₧d² den po lh∙t∞.
SQL:
SELECT Faktury.castka AS ╚┴STKA, (Today-dat1-14) AS PO╚ET_DN═,
(Today-dat1-14)*0.01*castka AS PEN┴LE, castka+(Today-dat1-14)*0.01*castka AS CELKEM, Firmy.nazev AS N┴ZEV,
Faktury.cislo AS FA_╚═SLO
FROM Faktury, Firmy WHERE Faktury.firma=Firmy.cislo AND (Faktury.zaplaceno IS NULL AND Faktury.dat1<=Today-14 AND Faktury.druh=2)
Poznßmky:
a) VÜimn∞te si, ₧e odpov∞∩ na tento dotaz se liÜφ den ode dne - jak nar∙stß penßle.
b) Ve v²razu v Φßsti SELECT i v podmφnce WHERE lze pou₧φvat n∞kterΘ funkce programovacφho jazyka. Mφsto funkce jazyka Today
by Ülo se stejn²m v²sledkem pou₧φt i funkci SQL CURRENT_DATE
.
PokraΦovßnφ