Tema: Re: Padëkit su uþklausa
Autorius: Laimis
Data: 2009-11-08 00:32:54
Artūras Šlajus rašė:
> Laimis wrote:
>> Na, Artūrai, nustebinai...
>>
>> SELECT M.* FROM mokiniai.m
>> LEFT JOIN klasiu_nariai KN
>> ON M.mok_id = KN.kln_mokinio_id
>> WHERE KN.kln_klases_id IS NULL
> koks skirtumas is kurio galo, jeigu 1:1 relationshipas? :)

Skirtumas tas, kad tai yra paprastas, tiesmukiškas būdas ir jam nereikia 
rašyti NULL į kitą lentą (*lentas*; jų gali būti ir daugiau) tokiu būdu, 
apeinant SQL atranką, žymint/saugant ir šią (papildomą) 
žymėjimo/saugojimo logiką/schemą išlaikant/aptarnaujant, kad mokinys 
nepriklauso klasei.
Kita vertus, skirtumas tas, kad tai yra tikrai (bent jau man) 
paprastesnis, aiškesnis būdas, nei neva paprasčiausias/lengviausias 
COUNT(*), kuris kažkodėl pasiūlytas pirmas...

>> (apie COUNT(*) apskritai nutylėsiu...)
> count sakiau, kad stabdo

Na, tokiu atveju bent jau GROUP BY HAVING (juoba, jei mokinys gali 
priklausyti keletui klasių)...