[Db] [Mysql] Dubbio architetturale

Domenico L. domenico.lorusso a pleiade.it
Lun 11 Giu 2007 13:05:56 CEST


Cristiano Verondini ha scritto:
>>> *Deve* prima filtrare sui campi chiave e poi effettuare un like, per
>>> forza... altrimenti tanto vale tornare ad utilizzare i file!!!
>
>    Intendevo se è l'unico criterio di ricerca! :)
accidenti, prof! mi hai fatto prendere un colpo!
>>> nome like 'Ciao%'
>>> se su nome è definito un indice mi faccia un accesso via indice...
> anzi ti dirò di più mi aspetterei che
>
>    Dipende dal tipo di indice. Alcuni lo permettono, altri no. 
> Naturalmente poi sta al DBMS usare questa caratteristica.
immagino che mysql sia per il no vero? in che senso dal tipo di indice?

Mi spiego uno dei campi chiave è appunto "nome" che è una stringa. il 
suo valore è definito da un dizionario e da regole.
Tra queste regole vi è quella di iniziare con una determinata parola per 
indicare il contesto di questo record, esempio:

anagrafica a cognome

i contesti possono essere più di uno:

anagrafica a nascita@Data

mi piacerebbe poter fare filtri del tipo:
anagrafica@%
o anagrafica a nascita@%

e mi aspettavo usassero l'indice ...

Naturalmente potrei spostare questo campo in una tabella dizionario, 
metterci un fulltext su questa tabella utilizzare un campo numerico 
nella tabella dati e fare una join... solo che per una serie di 
motivazioni  (su tutte la flessibilità) mi è poco conveniente....

-- 
Domenico L.        	 icq: 645 44 861 - msn: strahd a jumpy.it

per stupire mezz'ora basta un libro di storia,
io cercai di imparare la Treccani a memoria... [F.d.A.]



Maggiori informazioni sulla lista Db