Ver Mensaje Individual
  #2 (permalink)  
Antiguo 15/07/2011, 10:36
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Comparar fechas por rango

No te sirve de esta manera:

Código SQL:
Ver original
  1. CREATE TABLE #temp(año INT,mes INT, dia VARCHAR(10))
  2. INSERT INTO #temp (año,mes,dia) VALUES (2014,11,'01')
  3. INSERT INTO #temp (año,mes,dia) VALUES (2012,12,'01')
  4. INSERT INTO #temp (año,mes,dia) VALUES (2015,1,'01')
  5. INSERT INTO #temp (año,mes,dia) VALUES (2015,2,'01')
  6. INSERT INTO #temp (año,mes,dia) VALUES (2015,3,'01')
  7. INSERT INTO #temp (año,mes,dia) VALUES (2015,4,'01')
  8. INSERT INTO #temp (año,mes,dia) VALUES (2015,5,'01')
  9. INSERT INTO #temp (año,mes,dia) VALUES (2015,6,'01')
  10. INSERT INTO #temp (año,mes,dia) VALUES (2015,7,'01')
  11. INSERT INTO #temp (año,mes,dia) VALUES (2015,8,'01')
  12. INSERT INTO #temp (año,mes,dia) VALUES (2015,9,'01')
  13. INSERT INTO #temp (año,mes,dia) VALUES (2015,10,'01')
  14. INSERT INTO #temp (año,mes,dia) VALUES (2015,11,'01')
  15. INSERT INTO #temp (año,mes,dia) VALUES (2015,12,'01')
  16. INSERT INTO #temp (año,mes,dia) VALUES (2016,1,'01')
  17. INSERT INTO #temp (año,mes,dia) VALUES (2016,2,'01')
  18. INSERT INTO #temp (año,mes,dia) VALUES (2016,3,'01')
  19. INSERT INTO #temp (año,mes,dia) VALUES (2016,4,'01')
  20. INSERT INTO #temp (año,mes,dia) VALUES (2016,5,'01')
  21.  
  22.  
  23. SELECT * FROM(
  24. SELECT CONVERT(datetime,(CONVERT(VARCHAR(10),año) + '-' + CONVERT(VARCHAR(10),mes) + '-' + dia )) AS fecha FROM #temp
  25. ) t1 WHERE fecha BETWEEN '2014-05-01' AND '2016-08-01'

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me