我有以下postgresql语法,它返回session_date与$date_string匹配的值
问题是,有时$date_字符串在表中不可用,所以我希望返回最接近$date_字符串的日期
$date_string = '2014-04-25';
SELECT year, session_date FROM calendar_dates WHERE session_date='$date_string'
你知道我该怎么做吗?
我有以下postgresql语法,它返回session_date与$date_string匹配的值
问题是,有时$date_字符串在表中不可用,所以我希望返回最接近$date_字符串的日期
$date_string = '2014-04-25';
SELECT year, session_date FROM calendar_dates WHERE session_date='$date_string'
你知道我该怎么做吗?
如果你想要最接近的日期,可以这样做:
SELECT year, session_date
FROM calendar_dates
WHERE session_date < '$date_string'
ORDER BY session_date DESC
LIMIT 1;
之后最接近的日期使用类似的逻辑.
对于任何一侧最近的:
SELECT year, session_date
FROM calendar_dates
ORDER BY abs(session_date - date '$date_string')
LIMIT 1;