
Consulta de resgitro mas cercano
Publicado por Jhoxan (5 intervenciones) el 17/03/2016 21:58:37
Buenas tardes
Tengo un inconveniente con una consulta. Debo generar una consulta que me evalue dentro de un rango de fechas y devuelva los registro que esten dentro del rango, en caso contrario de no haber, que busque el registro mas cercano a la fecha que estan en lo rango.
mi tabla tiene
trabajador / Salario / Fecha
1----------------1000-----01-01-2016
1---------------- 800 -----01-10-2015
2---------------- 500 -----01-02-2016
2---------------- 550 -----15-02-2016
3---------------- 600 -----01-02-2016
4---------------- 100 -----01-11-2015
4---------------- 50 -----01-05-2015
mi consulta
select * from tabla where fecha between '01-02-2016' and '31-02-2016'
resultado obtenido
trabajador / Salario / Fecha
2 ---------------- 500----- 01-02-2016
2---------------- 550----- 15-02-2016
3 ---------------- 600 ----- 01-02-2016
resultado esperado
trabajador / Salario / Fecha
1----------------1000----- 01-01-2016
2 ---------------- 500----- 01-02-2016
2 ----------------550----- 15-02-2016
3 ----------------600 ----- 01-02-2016
4----------------100----- 01-11-2015
Tengo un inconveniente con una consulta. Debo generar una consulta que me evalue dentro de un rango de fechas y devuelva los registro que esten dentro del rango, en caso contrario de no haber, que busque el registro mas cercano a la fecha que estan en lo rango.
mi tabla tiene
trabajador / Salario / Fecha
1----------------1000-----01-01-2016
1---------------- 800 -----01-10-2015
2---------------- 500 -----01-02-2016
2---------------- 550 -----15-02-2016
3---------------- 600 -----01-02-2016
4---------------- 100 -----01-11-2015
4---------------- 50 -----01-05-2015
mi consulta
select * from tabla where fecha between '01-02-2016' and '31-02-2016'
resultado obtenido
trabajador / Salario / Fecha
2 ---------------- 500----- 01-02-2016
2---------------- 550----- 15-02-2016
3 ---------------- 600 ----- 01-02-2016
resultado esperado
trabajador / Salario / Fecha
1----------------1000----- 01-01-2016
2 ---------------- 500----- 01-02-2016
2 ----------------550----- 15-02-2016
3 ----------------600 ----- 01-02-2016
4----------------100----- 01-11-2015
Valora esta pregunta


0