Re: [PHP-ES] una duda!!!!
[email protected] (Marcos García)
| Newsgroups | php.general.es |
|---|---|
| Message-ID | <CAA7cc7G+v7ymTkFbndtvD_50VSJaUb97HT7duJE3qDKGD1xj6Q@mail.gmail.com> |
pero y si haces un like con %18%? *Marcos García* [email protected] El 15 de septiembre de 2011 12:57, David Blanco <[email protected]>escribió: > Hola! > > El 15 de septiembre de 2011 12:24, Irantzu Leunda Biskarret < > [email protected]> escribió: > > > > Tengo que hacer una select de un campo de una base de datos que se > > llama recursos. > > > > el campo recursos puede contener cosas de este tipo: > > > > 18;36 > > 18 > > 1,18,36 > > 1;18 > > > > El caso es que necesito que me muestre todos los registros donde > > aparece el 18 (por ejemplo) > > > > No lo hago con un like porque si pongo 1, me aparecerian los del 18, etc. > > > > me han hablado de expresiones irregulares pero no tengo ni idea. > > > > yo pensaba que podría haber una instrucción que me lea dentro del > > campo lo que estoy buscando. > > > > Suponiendo que la base de datos sea MySQL tienes al menos dos opciones: > > 1 - Usar expresiones regulares para buscar un patrón en el valor del campo. > La documentación está aquí: > > http://dev.mysql.com/doc/refman/5.0/es/regexp.html > > 2 - Usar un campo de tipo SET. Como parece que los valores se repiten (1, > 18, 36, etc.) es posible que pudieras definir el campo como SET. En campos > de este tipo se puede buscar mediante la función "FIND_IN_SET" de MySQL. > Tienes más información aquí: > > http://dev.mysql.com/doc/refman/5.0/es/set.html > > Espero que te haya sido de ayuda. > > Un saludo >