WITH t(n) AS (
SELECT '2009-10-08' from dual
UNION ALL
SELECT TO_CHAR(to_date(n,'yyyy-mm-dd') + (INTERVAL '1' DAY), 'yyyy-mm-dd' ) FROM t WHERE n > '2009-10-05'
)
SELECT * FROM t;
将 '+' 替换为 '-' 此查询的结果根本不会改变。
这怎么可能发生?
查询结果是
2009-10-08
2009-10-07
2009-10-06
2009-10-05