sql >> Base de Datos >  >> RDS >> PostgreSQL

PostgreSQL devuelve la fecha exacta o más cercana a la fecha consultada

Si desea la fecha más cercana anterior, hágalo de esta manera:

SELECT year, session_date
FROM calendar_dates
WHERE session_date < '$date_string'
ORDER BY session_date DESC
LIMIT 1;

La fecha más cercana después usa una lógica similar.

Para los más cercanos a ambos lados:

SELECT year, session_date
FROM calendar_dates
ORDER BY abs(session_date - date '$date_string') 
LIMIT 1;