Foros del Web » Programando para Internet » PHP »

Busqueda con MYSQL

Estas en el tema de Busqueda con MYSQL en el foro de PHP en Foros del Web. Ante todo un saludo a todos, ya que es el primer mensaje que escribo en este foro. Mi problema es el siguiente: Me encargaron el ...
  #1 (permalink)  
Antiguo 14/04/2004, 08:24
 
Fecha de Ingreso: abril-2004
Mensajes: 2
Antigüedad: 13 años, 7 meses
Puntos: 0
Pregunta Busqueda con MYSQL

Ante todo un saludo a todos, ya que es el primer mensaje que escribo en este foro.

Mi problema es el siguiente:

Me encargaron el trabajo de hacer unos pequeños cambios a un sitio, que en una de sus partes tiene una busqueda de usuarios por apellido y nombre. El problema es que hay usuarios con apellido compuesto (p.e. Saenz Peña) y el cliente quiere que cuando uno busque Saenz aparezcan los que tiene ese solo apellido y los que poseen apellido compuesto. (En la programacion que tiene ahora, eso no sucede, aparecen solo los Saenz y listo).

Se me habia ocurrido una solucion para el tema, que era no buscar por el campo de apellidos de la db, sino hacerlo a traves de un campo alternativo (que contenga el primer apellido del apellido compuesto) y que apartir de la busqueda que realize de eso muestre el campo de apellido.

Claro, surgió el problema que no puedo modificar la base de datos (sin contar que habria que modificar mas de 7000 registros) y no tengo una sola idea como hacer para que se muestre lo que necesito (ni siquiera estoy seguro si se puede hacer).

Espero que no haya sido muy confuso, y ojalá puedan ayudarme.

Saludos
  #2 (permalink)  
Antiguo 14/04/2004, 08:33
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero, en tu BD como guardas el apellido(s) .. en un sólo campo "apellidos" o todo junto (apellidos y nombre?) en un sólo campo?


¿Las consultas SQL que usan actualmente son del tipo?:

SELECT * FROM tabla WHERE nombre=$nombre

si es así .. usa LIKE como operador para comparar y sus comodines .. así te apareceran los Saez y los Saez nosecuantos ..

SELECT * FROM tabla WHERE nombre LIKE '%$nombre%'

Suponiendo que hablamos de la BD sea Mysql . .por qué no indicastes cual usan ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 14/04/2004, 11:02
 
Fecha de Ingreso: abril-2004
Mensajes: 2
Antigüedad: 13 años, 7 meses
Puntos: 0
Si, la base era en MySQL.

Gracias por la ayuda. Probe el LIKE en lugar de usar el registro tal cual viene de la consulta "WHERE apellido =" y funcionó a la perfeccion!

: )
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 09:54.