A 表中有个日期字段 ,想查询出其前三个月的记录。日期字段类型为TIMESTAMP。如何写sql.请教了!!
------解决方案--------------------
select * from 表名 where acctime<add_months(systimestamp,-3)
------解决方案--------------------
- SQL code
create table t1 (a timestamp);insert into t1 values (TO_TIMESTAMP('2012-04-01 12:12:09', 'YYYY-MM-DD HH24:MI:SS'));insert into t1 values (TO_TIMESTAMP('2012-03-01 12:12:09', 'YYYY-MM-DD HH24:MI:SS'));insert into t1 values (TO_TIMESTAMP('2012-02-01 12:12:09', 'YYYY-MM-DD HH24:MI:SS'));insert into t1 values (TO_TIMESTAMP('2012-01-01 12:12:09', 'YYYY-MM-DD HH24:MI:SS'));insert into t1 values (TO_TIMESTAMP('2012-04-12 12:12:09', 'YYYY-MM-DD HH24:MI:SS'));select * from t1where a >= add_months(sysdate,-3) and a <= sysdate a-----------------------------------------------1 01-4月 -12 12.12.09.000000 下午2 01-3月 -12 12.12.09.000000 下午3 01-2月 -12 12.12.09.000000 下午4 12-4月 -12 12.12.09.000000 下午