Tema: Re: Padëkit su uþklausa
Autorius: Artūras Šlajus
Data: 2009-11-08 02:02:35
Laimis wrote:
> 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.
Hm, teisus tu :) Kažkaip nepagalvojau, kad prijoininant neradus įrašo bus null 
visur. Persiprašau ;]]

> 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...
Šitas jau kaip kam.