Foros del Web » Programando para Internet » PHP »

Crear una consulta like para coincidencias

Estas en el tema de Crear una consulta like para coincidencias en el foro de PHP en Foros del Web. Hola mis amores, llegue a un problemita, espero me puedan hechar una mano :p. Miren hace tiempo recuerdo q cuando vi un poquito de base ...
  #1 (permalink)  
Antiguo 17/09/2011, 13:17
Avatar de ylellan  
Fecha de Ingreso: mayo-2010
Ubicación: en un lugar de Veracruz
Mensajes: 432
Antigüedad: 13 años, 10 meses
Puntos: 36
Pregunta Crear una consulta like para coincidencias

Hola mis amores, llegue a un problemita, espero me puedan hechar una mano :p. Miren hace tiempo recuerdo q cuando vi un poquito de base de datos vi algo de una sentencia like en un select. Tengo un select asi:

Código MySQL:
Ver original
  1. Select *from cliente where nombre like '$dato';

$dato es una variable q cambia desde una caja de texto. El problema es q recuerdo q like puede hacer q solo si pongo una letra del nombre me mande todos los supuestos resultados. Pero con mi consulta debo de poner todo el nombre, y lo que yo quiero es solo poner una letra o tan solo las tres primeras letras y me mande algunos resultados con coincidencias.
Por asi decirlo:En mi base tengo nombres como
Sergio arrieta
Martha lopez
Harim vazquez
Jesus ramirez
Sergio cruz
Mariana osorio
Sergio perez

Y q si yo le pongo sergio me mande los 3 sergios. Porfa espero me puedan ayudar mis amores. Mushos besos a todos y gracias por tratar de ayudarme.
  #2 (permalink)  
Antiguo 17/09/2011, 14:09
 
Fecha de Ingreso: marzo-2007
Mensajes: 782
Antigüedad: 17 años, 1 mes
Puntos: 16
Respuesta: Crear una consulta like para coincidencias

Creo que hay 3 opciones.. en tu caso usaria la ultima y reemplazaria Luk por la variable:
Cita:
select * from Person where name like 'Luk%'

or

select * from Person where name.left(3) = 'Luk'

or

select * from Person where name.substring(0,3) = 'Luk'
  #3 (permalink)  
Antiguo 17/09/2011, 15:22
 
Fecha de Ingreso: abril-2009
Mensajes: 409
Antigüedad: 15 años
Puntos: 3
Respuesta: Crear una consulta like para coincidencias

La SELECT que necesitas es la siguiente

SELECT * FROM cliente WHERE nombre LIKE '$dato%';

'%$dato%' que contenga en algun lado de la palabra a $dato
'$dato%' que la palabra empieze con $dato
'%$dato' que la palabra termine con $dato.

cualquiera de esas 3 posibilidades acepta el like.

Saludos.
  #4 (permalink)  
Antiguo 17/09/2011, 15:36
Avatar de gustavopino  
Fecha de Ingreso: septiembre-2011
Ubicación: venezuela
Mensajes: 152
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Crear una consulta like para coincidencias

coincido con eybel pero creo que seria mejor así:
Código PHP:
Ver original
  1. SELECT * FROM cliente WHERE nombre LIKE '%$dato%';
__________________
Visita a Publiventa donde compras y vendes de todo

Etiquetas: mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:24.