[Db] [Mysql] Dubbio architetturale
Cristiano Verondini
cristiano a verondini.it
Lun 11 Giu 2007 13:05:32 CEST
>>>>> 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?
Ad esempio se il DBMS usa BTree, una cosa del genere dovrebbe essere
possibile. Non credo però sia possibile se il BTree usa la 'tail
compression' ...
mysql dovrebbe usare questa caratteristica quando ricerchi per valori
parziali della chiave dell'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 ...
Dovrebbero, ma una EXPLAIN ti darà questa certezza.
>> 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....
Bhe, questa era l'idea iniziale ... :)
--
Cristiano Verondini
http://www.verondini.it --- [ICQ: 114 190]
Maggiori informazioni sulla lista
Db