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

Problema con consulta, creo que fácil

Estas en el tema de Problema con consulta, creo que fácil en el foro de Mysql en Foros del Web. Hola Tengo la siguiente consulta a una bd: Código: $sqlfinal="SELECT * FROM datos_generales WHERE contrato = '--' AND " . $sql_buscar . "order by 'nombre' ...
  #1 (permalink)  
Antiguo 18/12/2006, 13:29
 
Fecha de Ingreso: diciembre-2001
Mensajes: 21
Antigüedad: 22 años, 5 meses
Puntos: 0
Problema con consulta, creo que fácil

Hola

Tengo la siguiente consulta a una bd:
Código:
$sqlfinal="SELECT * FROM datos_generales WHERE contrato = '--' AND " . $sql_buscar . "order by 'nombre' ASC";
la variable $sql_buscar viene de un bucle foreach que recorre un array, vamos que la consulta que queda puede ser por ejemplo:

Código:
"SELECT * FROM datos_generales WHERE contrato = '--' AND posicion LIKE '%1%' OR posicion LIKE '%2%' OR posicion LIKE '%3%' OR posicion LIKE '%4%' OR posicion LIKE '%5%' order by 'nombre' ASC"
El problema es que esta consulta no me devuelve sólo los resultados que tengan el campo "contrato =--" y el campo posicion que se le pasa.
Me devuelve todos los registros sin tener en cuenta el campo "contrato", no me los filtra.

¿Cómo debería ser la consulta para que me filtre los resultados por ambos campos?

Gracias
  #2 (permalink)  
Antiguo 18/12/2006, 14:14
 
Fecha de Ingreso: enero-2005
Mensajes: 105
Antigüedad: 19 años, 3 meses
Puntos: 2
Re: Problema con consulta, creo que fácil

Hola:

Prueba colocando entre parentesis los todos los 'OR', asi:

$sqlfinal="SELECT * FROM datos_generales WHERE contrato = '--' AND (" . $sql_buscar . ") order by 'nombre' ASC";

deberia quedar algo asi:
"SELECT * FROM datos_generales WHERE contrato = '--' AND ( posicion LIKE '%1%' OR posicion LIKE '%2%' OR posicion LIKE '%3%' OR posicion LIKE '%4%' OR posicion LIKE '%5%') order by 'nombre' ASC"
  #3 (permalink)  
Antiguo 18/12/2006, 16:29
 
Fecha de Ingreso: diciembre-2001
Mensajes: 21
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: Problema con consulta, creo que fácil

Gracias rlobos, efectivamente es como dices.

Sabía yo que no era tan dificil pero como te pille el día con bloqueo mental y haciendo más de una cosa a la vez es que no hay manera.
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 22:42.