Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Home ~ Php :: LIKE e FULL TEXT in MySQL un confronto :: Indice Php

LIKE e FULL TEXT in MySQL un confronto

Categoria: Php Inserito il: 05-09-2006 Stampa (11600 click)

All'inizio di questa breve serie di articoli sulle ricerche FULL TEXT abbiamo detto che l'operatore LIKE si limita a parsare determinati contenuti alla ricerca delle chiave che le viene passata come parametro; quindi se trova nei nostri record la stringa cercata semplicemente li restituisce in output.

Questo vuol dire che con LIKE non avremo la possibilità di ottenere ricerche basate su confronti se non attraverso un largo utilizzo di operatori come WHERE, AND e OR.

Per chiarire il concetto appena espresso mostreremo al lettore due esempi, uno basato su LIKE e l'altro sull'indicizzazione FULL TEXT; entrambi mostreranno istruzioni create per lo stesso scopo finale, la ricerca all'interno di un contenuto di due parole.

Ecco l'esempio basato su LIKE:

SELECT titolo, descrizione
FROM news
WHERE (titolo like '%red%' or titolo like '%hat%' ) 
or (descrizione like '%red%' or descrizione like '%hat%')
Di seguito, presentiamo invece l'esempio basato sulla ricerca FULL TEXT:
SELECT titolo, descrizione
FROM news
WHERE MATCH (titolo, descrizione) AGAINST ('red hat')
Come si potrà facilmente notare, a livello sintattico la seconda istruzione è sicuramente più semplice da digitare, inoltre, quest'ultima può ulteriormente essere raffinata sulla base dei livelli di corrispondenza, cosa che non è ivece prevista per LIKE.

Se proprio siamo alla ricerca di un difetto nella procedura di ricerca FULL TEXT potremo dire che quest'ultima a differenza di LIKE non è immediatamente disponibile; dato che si basa sulla ricerca di contenuti indicizzati FULL TEXT necessita di termini di paragone per la generazione degli SCORE, avremo quindi la necessità di memorizzare un numero variabile di record prima di poter operare delle ricerche.

Attenzione: questo articolo è stato concesso in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione,
anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it.

Cerca nel sito
Per sito
Sviluppatore di applicazioni Web con competenze evolute nella progettazione delle basi di dati, autore per alcune delle più importanti testate on line dedicate alla manualistica tecnica (HTML.it, MrWebmaster.it, Edit) e consulente per l'e-learning.
Tutte le categorie
Tutorial Random
Usare il mod_rewrite: trasformare pagine php in html
Grazie al Web Sever Apache abbiamo la possibilità di intervenire sulla sintassi delle URL per modificarle. In questo articolo vedremo... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti