[Db] [mySQL] se non c è crealo!
Angelo Galleja
angelo.galleja a email.it
Mer 15 Nov 2006 17:15:23 CET
Cristiano Verondini ha scritto:
>>> fai SELECT .. FROM figlio WHERE regione=... etc. etc.
>>>
>>> ti risparmi una join, considera il caso in cui la tabella padre
>>> dovesse andare perduta (estremizzo volutamente), la tabella figlio
>>> avrebbe ancora un significato logico perchè i campi che compongono
>>> la pk hanno una corrispondenza nella realtà.
>
> Lo trovo un esempio poco calzante. Primo perchè non deve succedere
> che si cancella una tabella (e certo non decido la *struttura* del DB in
> vista di un evento di questo tipo),
ho estremizzato volutamente :) c'era anche scritto tra parentesi
> secondo perché la ricerca che fai
> nella tabella figlio di per sé ha poco significato
perchè? sto cercando qualcosa che ha una corrispondenza nella realtà:
sto cercando "nonsocosa" che sia in LIGURIA->GENOVA->GE->LA_MIA_FILIALE
e IMHO è più naturale di cercare "nonsocosa" che abbia come id padre 26
>, probabilmente dovrai
> risalire all'elemento padre dei record trovato (e vai di join).
probabilmente, ma qualora non fosse così mi sono risparmiato una JOIN
> Oltretutto, la WHERE andrebbe fatta con valori per campi componenti
> l'indice nella sua parte iniziale ...
scusa ma questa parte non l'ho capita
>insomma, lo trovo poco pratico.
non credo sia solo questione di praticità
Maggiori informazioni sulla lista
Db