我尝试使用以下查询从某个表中获取最后13个滚动月份。我不断收到错误'期望在where关键字和年份关键字'之间出现问题。似乎它是基本的东西,但我似乎无法弄明白。我也尝试过括号,但它仍然给我一个错误。
select count(*)
from t
where year(creat_dt) * 100 + month(creat_dt) BETWEEN trunc(add_months(current_date,-13),'MM') AND last_day(current_date,'MM'))
答案 0 :(得分:2)
您正在将整数与日期进行比较。如何使用日期呢?如果您没有未来数据,那么这应该足够了:
select count(*)
from t
where creat_dt >= trunc(add_months(current_date, -13), 'MM')