Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/03/2016, 10:06
sefirotxx
 
Fecha de Ingreso: febrero-2011
Mensajes: 108
Antigüedad: 13 años, 2 meses
Puntos: 4
Consulta BETWEEN al revés

Hola estimados, tengo un problema con una consulta la cual no se como formularla:

Tengo una fecha de entrada y una fecha de salida la cual registro en la base de datos para crear una reserva, por lo que tengo la siguiente tabla con registros:

reserva
id | fechain | fechaout
---------------------------------------
1 | 15/03/2016 | 17/03/2016
---------------------------------------

El problema es que yo quiero validar que otra reserva que ingrese no sea en la misma fecha que alguien haya reservado, le di muchas vueltas y la consulta que yo quiero hacer es preguntar si mis fechas de entrada y salida están dentro de un registro de la base de datos. De forma mas técnica sería una consulta así:

Código:
SELECT id FROM reserva WHERE $fechaingreso BETWEEN fechain AND fechaout OR $fechasalida BETWEEN fechain AND fechaout
Siendo $fechaingreso y $fechaslida lo que este intentando ingresar el usuario. Esto es en rigor lo que necesito preguntar pero evidentemente tengo varios errores, sobre todo que la consulta debería ser al revés en los BETWEEN

Código:
SELECT id FROM reserva WHERE fechain BETWEEN $fechaingreso AND $fechasalida OR fechaout BETWEEN $fechaingreso AND $fechasalida
Alguien me puede dar una luz de como debería consultar a la base de datos lo que requiero