Re: SQL dotat - rozdil tabulek

From: Michal Bilcik <krutohlav (zavinac)>
Date: 07. 03. 2004, 18:06 CET
Nazdar,
servis-internet@nawebu.cz napisal (mail mal 2307 bajtov):

> Potreboval bych poradit s jednim SQL dotazem. Potrebuju ho pro MySQL.
> Mam dve tabulky:

> tabulka 'prvni'

> id  druh
> ---------
> 1   jablko
> 2   hruska

> tabulka 'druha'
> id  druh
> ---------
> 1   jablko
> 2   hruska
> 3   rybiz


> Potreboval bych sestavit dotaz ktery vrati polozky ktere jsou v tabulce
> 'druha' ale nejsou v tabulce 'prvni'. Takze v tomhle pripade to vrati
> pouze "rybiz".

A co ked bude tabulka "druha" takato:

id  druh
---------
1   jablko
2   hruska
3   rybiz
4   rybiz
5   rybiz

??

Chces vyhodit vysledok 3 krat rybiz (vsetky polozky, ktore nemaju
naprotivok v druhej tab.) alebo iba raz (druh rybiz nema naprotivok a
nezaujima ma kolkokrat) ?
S tvojho popisu to nieje jasne..

Ak raz:

SELECT b.druh FROM druha AS b LEFT JOIN prvni AS a ON a.druh = b.druh
WHERE a.druh IS NULL GROUP BY a.druh

Ak vsetky vyskyty:

SELECT b.druh FROM druha AS b LEFT JOIN prvni AS a ON a.druh = b.druh
WHERE a.druh IS NULL

vyskusal som, funguje.

S pozdravom,
 Michal Bilcik (ICQ# 156366308)

--
Bůh je reálný, pokud nebyl deklarován jako integer.                            
Received on Sun, 07 Mar 2004 18:06:54 +0100

This archive was generated by hypermail 2.1.8 : 07. 03. 2004, 18:08 CET