• Domingo 22 de Diciembre de 2024, 19:53

Autor Tema:  Sentencia Sql Usando Between  (Leído 1985 veces)

chryobcn

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Sentencia Sql Usando Between
« en: Viernes 21 de Mayo de 2004, 17:09 »
0
Saludos nuevamente

El proyecto final me trae loco...la gestion de un hotel...

Mi pregunta se refiere a que tengo que dar de alta las temporadas y claro no me interesa que las fechas de inicio y final de la temporada de la temporada puedan sobreponerse a las de otra temporada ya existente.

Ejemplo.: Temporada 1: 01/01/2004 - 01/05/2004
cualquier otra temporada no puede estar entre ni ser estas fechas.

La temporada solo es aplicable a 1 año, si empieza en el 2004 no puede llegar al 2005 (esto ya lo tengo controlado).

Estoy intentando hacer un sql que me recupere una temporada que tenga las fechas entre las nuevas que se quieren añadir para asi comprobar esto.

Lo que he pensado es lo siguiente:
Código: Text
  1.  
  2. strSQL = "SELECT codi FROM temporada WHERE (fecha_inici BETWEEN '" & DTPinicio.Value & "' AND '" & DTPfinal.Value & "') OR (fecha_fin BETWEEN '" & DTPinicio.Value & "' AND '" & DTPfinal.Value & "')"
  3.  
  4.  

Pero no me funciona del todo bien, solucionar este tema por sql seria un gran alivio ya que por codigo de visual podria ser una funcion de muchas linias.

Gracias

chryobcn

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Re: Sentencia Sql Usando Between
« Respuesta #1 en: Viernes 21 de Mayo de 2004, 18:06 »
0
Saludos

Creo que lo tengo solucionado, el codigo seria el siguiente:

Código: Text
  1.  
  2. strSQL = "SELECT codi FROM temporada WHERE ('" & DTPfinal.Value & "' BETWEEN fecha_inici AND fecha_fin) OR ('" & DTPinicio.Value & "' BETWEEN fecha_inici AND fecha_fin) OR (fecha_fin < '" & DTPfinal.Value & "' AND fecha_inici > '" & DTPinicio.Value & "')"
  3.  
  4.  

Si alguien ve algun error o quiere comentar algo al respecto, se lo agradeceria.