Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Consulta con LIKE

Estas en el tema de Consulta con LIKE en el foro de Mysql en Foros del Web. Me gustaría saber como puedo agregar a estas consultas una restricción más a la consulta misma. Código: SELECT * FROM objetos WHERE NOMBRE LIKE 'algo' ...
  #1 (permalink)  
Antiguo 02/02/2010, 19:10
 
Fecha de Ingreso: julio-2009
Mensajes: 12
Antigüedad: 10 años, 4 meses
Puntos: 0
Pregunta Consulta con LIKE

Me gustaría saber como puedo agregar a estas consultas una restricción más a la consulta misma.

Código:
SELECT * FROM objetos WHERE NOMBRE LIKE 'algo' OR DESCRIPCION LIKE 'algo' LIMIT 25;
Código:
SELECT * , MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( 'algo' ) AS Score FROM inventario WHERE MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( 'algo' ) ORDER BY Score DESC LIMIT 50;
Tengo una columna llamada estado, y quisiera poder agregar a esas consultas que si la columna estado tiene que ser igual a "r".

Probé haciendo esto, pero la consulta me da el mismo resultado que las anteriores, aún cuando mi columna estado no es igual a "r", alguién podría ayudarme.

Código:
SELECT * FROM objetos WHERE estado='r' AND NOMBRE LIKE '%$busqueda%' OR DESCRIPCION LIKE '%$busqueda%' LIMIT 25;
Código:
SELECT * , MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' ) AS Score FROM inventario WHERE estado='r' AND MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' ) ORDER BY Score DESC LIMIT 50;
  #2 (permalink)  
Antiguo 03/02/2010, 01:42
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 11 años, 8 meses
Puntos: 300
Respuesta: Consulta con LIKE

Tu problema son los paréntesis
SELECT * FROM objetos WHERE estado='r' AND (NOMBRE LIKE '%$busqueda%' OR DESCRIPCION LIKE '%$busqueda%') LIMIT 25;

SELECT * , MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' ) AS Score FROM inventario WHERE estado='r' AND MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' ) ORDER BY Score DESC LIMIT 50;
  #3 (permalink)  
Antiguo 03/02/2010, 10:33
 
Fecha de Ingreso: julio-2009
Mensajes: 12
Antigüedad: 10 años, 4 meses
Puntos: 0
Pregunta Respuesta: Consulta con LIKE

Muchas gracias, la primera consulta funciona perfectamente, pero la segunda que me ayudaste parece que es lo mismo que como la había hecho yo y no me muestra el resultado basado en la columna estado, probe con parentisis haciendo esto, pero en todas las consultas no encuentra coincidencias, a pesar de que si hay datos en la bd que cumplen con lo consultado, agradecería tu apoyo, gracias.

esto hice yo ahora.


Cita:
SELECT * , MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' ) AS Score FROM objetos WHERE estado='e' AND (MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' )) ORDER BY Score DESC LIMIT 50;
  #4 (permalink)  
Antiguo 03/02/2010, 10:53
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 11 años, 8 meses
Puntos: 300
Respuesta: Consulta con LIKE

¿Qué ocurre con esta?
SELECT * , MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' ) AS Score FROM inventario WHERE MATCH ( NOMBRE, DESCRIPCION ) AGAINST ( '$busqueda' ) AND estado='r' ORDER BY Score DESC LIMIT 50;
  #5 (permalink)  
Antiguo 03/02/2010, 12:36
 
Fecha de Ingreso: julio-2009
Mensajes: 12
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Consulta con LIKE

siempre me dice que no hay coincidencias, a pesar de que si hay datos en la bd que coincidan con las datos ingresados en la consulta.

Etiquetas: Ninguno
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 18:33.