Select z databazi s relaci 1:N
Zdeněk Böhm
zdenek.bohm na gammarus.cz
Pátek Prosinec 7 15:19:20 CET 2001
Zdravim,
mam nasledujici dve databaze (zjednodusene):
Databaze1 ma sloupec Id typu int, Databaze 2 ma sloupec Databaze1_Id typ int
a sloupec XXX typ int. Ke kazdemu Id v Databazi1 muze existovat 1-5 zaznamu
v Databazi2 (lise se obsahem sloupce XXX).
Potrebuju poradit, jak napsat SELECT, ktery vybere zaznamy z Databaze1, ke
kterym neexistuje v Databazi2 zaznam s nejakym konkretnim cislem (treba 3) v
sloupci XXX.
Priklad:
Databaze1: Databaze2:
Id Databaze1_Id XXX
-------------------------------------------------------------------
1 1 1
1 2
1 3
2 1 1
1 2
SELECT 1.Id, 2.XXX FROM Databaze1 AS 1, Databaze2 AS 2 WHERE 1.Id = 2.Id AND
XXX = 3 vrati:
Id XXX
-------------
1 3
SELECT 1.Id,2.XXX FROM Databaze1 AS 1, Databaze2 AS 2 WHERE 1.Id = 2.Id AND
XXX <> 3 vrati:
Id XXX
-------------
1 1
1 2
2 1
2 2
Jak napsat dotaz, ktery vrati (v pripade XXX=3)
Id XXX
-------------
2 1
2 2
Jde to?
Diky Zdenek
Další informace o konferenci Databases