Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Excluir variable de una consulta SQL

Estas en el tema de Excluir variable de una consulta SQL en el foro de PHP en Foros del Web. Hola amigos del Foro! Espero puedan ayudarme con la siguiente cuestión: Tengo una variable llamada $id_reservación y la siguiente consulta @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver ...
  #1 (permalink)  
Antiguo 09/09/2013, 11:24
 
Fecha de Ingreso: agosto-2013
Ubicación: Cuernavaca
Mensajes: 27
Antigüedad: 8 años, 10 meses
Puntos: 0
Excluir variable de una consulta SQL

Hola amigos del Foro!

Espero puedan ayudarme con la siguiente cuestión:

Tengo una variable llamada $id_reservación y la siguiente consulta
Código PHP:
Ver original
  1. $reservaciones = mysql_query("SELECT * FROM reservaciones WHERE (fecha_entrada BETWEEN '".$fecha_in."' AND '".$fecha_out."' OR fecha_salida BETWEEN '".$fecha_in."' AND '".$fecha_out."') AND habitacion LIKE '%$habitacion%' AND id_edificio=".$id_edificio."")or die(mysql_error());

Esta consulta sirve para verificar que no existan reservaciones en las fechas seleccionadas.

Ahora lo que necesito es incluir en esa consulta que busque todas las reservaciones excluyendo el id_reservacion guardada en la variable

Saludos
  #2 (permalink)  
Antiguo 09/09/2013, 11:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 14 años, 2 meses
Puntos: 2534
Respuesta: Excluir variable de una consulta SQL

Pues colocar la variable es trivial realmente, tu problema radica tal vez en la redacción de la consulta SQL, ¿o eso no es? :pensando.

Porque de ser así entonces tu principal problema no corresponde a PHP, porque tu problema no es de PHP, pues como te digo es bien fácil colocar la variable.

Si tu dificultad es expresar la consulta de SQL entonces debiste abrir el tema en el sub-foro de SQL y no aquí.

Cita:
SELECT * FROM table WHERE (todas tus condiciones) AND foo_id != 99
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/09/2013, 11:35
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 14 años, 4 meses
Puntos: 96
Respuesta: Excluir variable de una consulta SQL

Tambien puede ser asi

Cita:
SELECT * FROM table WHERE (todas tus condiciones) AND foo_id <> 99
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #4 (permalink)  
Antiguo 09/09/2013, 11:40
 
Fecha de Ingreso: agosto-2013
Ubicación: Cuernavaca
Mensajes: 27
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Excluir variable de una consulta SQL

mi consulta esta bien, funciona correctamente. Solo necesito agregarle esa otra opcion (excluir id_reservacion). Si le coloco un AND lo que me va a hacer es que se centre en solo esa reservacion y yo quiero que haga todo lo contrario que busque en toda mi BD sin tomar en cuenta los datos que se encuentran en $id_reservacion.

pasare el tema a SQL
gracias
  #5 (permalink)  
Antiguo 09/09/2013, 11:46
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 14 años, 4 meses
Puntos: 96
Respuesta: Excluir variable de una consulta SQL

si no entediste lo que te puso pateketrueke leete esto

http://dev.mysql.com/doc/refman/5.0/...operators.html
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #6 (permalink)  
Antiguo 09/09/2013, 12:33
 
Fecha de Ingreso: agosto-2013
Ubicación: Cuernavaca
Mensajes: 27
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: Excluir variable de una consulta SQL

Ok gracias!!!
Realmente no entendí a q se refieren con foo_id pero estare checando el manual y encontrando la mejor solución
  #7 (permalink)  
Antiguo 09/09/2013, 12:46
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 14 años, 4 meses
Puntos: 96
Respuesta: Excluir variable de una consulta SQL

Cita:
Iniciado por desweb Ver Mensaje
Ok gracias!!!
Realmente no entendí a q se refieren con foo_id pero estare checando el manual y encontrando la mejor solución
foo_id se refiere al posible id_reservacion o como lo tengas
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #8 (permalink)  
Antiguo 09/09/2013, 13:05
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 14 años, 7 meses
Puntos: 2658
Respuesta: Excluir variable de una consulta SQL

Cita:
Iniciado por desweb Ver Mensaje
Ok gracias!!!
Realmente no entendí a q se refieren con foo_id pero estare checando el manual y encontrando la mejor solución
La que te han dado es la mejor solución...

Tu problema es sencillísimo: Si la consulta que tenías ya te devolvía los resultados básicos que necesitas, y solamente pretendes excluir de ese conjunto un determinado ID de una de las tablas afectadas, eso es simplemente agregarle (AND) que los IDS devueltos sean diferentes (!= o <>) a un valor dado.
Es tan simple como eso... y es exactamente lo que te indicaron poner.
Ni más, ni menos.
Es lógica proposicional básica, y que se aplica en el WHERE.

¿Por qué crees que te dará un resultado distinto?

Cita:
Si le coloco un AND lo que me va a hacer es que se centre en solo esa reservacion y yo quiero que haga todo lo contrario que busque en toda mi BD sin tomar en cuenta los datos que se encuentran en $id_reservacion.
Decir eso es no entender la lógica de un WHERE...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: php+bd+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 01:47.