# RoR, Mysql e ricerca con LIKE

**URL:** <https://www.ruby-forum.com/t/ror-mysql-e-ricerca-con-like/92148>\
**Category:** IT\
**Created:** [April 16, 2007, 4:57pm UTC](https://www.ruby-forum.com/t/ror-mysql-e-ricerca-con-like/92148 "2007-04-16T16:57:13Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [April 16, 2007, 4:57pm UTC](https://www.ruby-forum.com/t/ror-mysql-e-ricerca-con-like/92148/1 "2007-04-16T16:57:13Z")

</div>

Buongiorno lista.  
Devo dare agli utenti la possibilitÃ di cercare dei dati partendo da una  
parte di essi, per esempio se si vuole cercare “giovanni” dovrÃ essere  
possibile inserire “giov” o “van”; naturalmente come risultato si  
avranno tutte le occorrenze della ricerca. Uso Mysql come database.  
Girando ho trovato questo post che fa al caso mio:  
[http://www.ruby-forum.com/topic/85885#158258](http://www.ruby-forum.com/topic/85885#158258)

PerÃ² a me continua a non andare, dandomi sempre quell’errore di sintassi  
Mysql in corrispondenza degli apici, nonostante le abbia ormai provate  
tutte.  
Inutile aggiungere che se tolgo il LIKE e torno ad una ricerca  
“tradizionale” tutto funziona correttamente, perÃ² non posso fare  
ricerche partendo da dati parziali.

Dove sbaglio? Ci sono altri sistemi?

Grazie e a presto 🙂  
Daneel O.

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [April 16, 2007, 5:05pm UTC](https://www.ruby-forum.com/t/ror-mysql-e-ricerca-con-like/92148/2 "2007-04-16T17:05:58Z")

</div>

Il giorno 16/apr/07, alle ore 16:57, Daneel O. ha scritto:

La sintassi è questa:

SELECT field FROM table WHERE field LIKE “%giov%”;

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [April 16, 2007, 5:33pm UTC](https://www.ruby-forum.com/t/ror-mysql-e-ricerca-con-like/92148/3 "2007-04-16T17:33:49Z")

</div>

Luca M. wrote:

> direi che questo potrebbe andare:
> 
> Model.find(:all, :conditions=\>[‘field like ?’,  
> “%#{params[:lookingfor]}%”])
> 
> il problema nel post e’ che mettevao il % nella clausole where (le  
> conditions) quando in realta deve essere parte del _valore_ passato alla  
> stringa.
> 
> ciao,  
> Luca

Ecco, proprio l’unica cosa che non ho provato: spostare "di lÃ " i %…  
Certo che perÃ² anche loro fare esempi errati e dire che funzionano…  
non si fa mica cosÃ¬… o Ã¨ per burlarsi dei novellini? 🙂

Grazie mille e a presto 🙂  
Daneel O.

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [April 16, 2007, 5:06pm UTC](https://www.ruby-forum.com/t/ror-mysql-e-ricerca-con-like/92148/4 "2007-04-16T17:06:58Z")

</div>

Daneel O. wrote:

> Buongiorno lista.  
> Devo dare agli utenti la possibilitÃ di cercare dei dati partendo da una  
> parte di essi, per esempio se si vuole cercare “giovanni” dovrÃ essere  
> possibile inserire “giov” o “van”; naturalmente come risultato si  
> avranno tutte le occorrenze della ricerca. Uso Mysql come database.  
> Girando ho trovato questo post che fa al caso mio:  
> [Noob search question - Rails - Ruby-Forum](http://www.ruby-forum.com/topic/85885#158258)

direi che questo potrebbe andare:

Model.find(:all, :conditions=\>[‘field like ?’,  
“%#{params[:lookingfor]}%”])

il problema nel post e’ che mettevao il % nella clausole where (le  
conditions) quando in realta deve essere parte del _valore_ passato alla  
stringa.

## ciao, Luca

Web: [http://spazidigitali.com](http://spazidigitali.com) - [http://thetyper.com](http://thetyper.com)  
Email mailto://removed\_email\_address@domain.invalid  
Skype callto://l.mearelli
