Il campo deve essere FULL TEXT...
ovviamente non trovera' mai 'berretto nuovo' ma se nella ricorrenza AGAINST ci fosse 'copricapo nuovo vecchio' potrebbe anche trovarti "berretto e cappello" ma sarebbero dei "falsi amici" nel senso che nella frase sicuramente c'era "copricapo" oppure "nuovo" o "vecchio"... darti insomma convinzioni errate sul valore della query.codice:SELECT * FROM tabella WHERE MATCH(campo_fulltext) AGAINST('cappello antico')
http://dev.mysql.com/doc/mysql/en/fulltext-search.html