关于Oracle MAX(date)函数
业务原要求是 取比参数小但是最接近参数的时间
由于用到了聚合函数max,所以分成了两段sql
sql 1 取得最接近的时间
SELECT
TO_CHAR(MAX(时间字段),'YYYY/MM/DD HH24:MI:SS')
-- 'YYYY/MM/DD HH24:MI:SS' 之所以用这个 而不是用 yyyy/mm/dd hh:mm:ss 是因为
FROM
表A
WHERE
参数字段1 = #{参数字段1}
AND
时间字段 < TO_DATE(#{参数字段2},'YYYY/MM/DD HH24:MI:SS')
ORDER BY
字段 ASC
sql 2 ; 将取得的最接近时间当作参数传入sql2。