你需要建一个包含所有查询年份的表,year_table(yyyy number(4));SELECT y.yyyy,d.delcausidl,d.delcausstr,COUNT(d.cusidl) FROM delcustDtl d, year_table y WHERE y.yyyy = to_number(to_char(d.deletedt(+),'yyyy')) GROUP BY y.yyyy,d.delcausidl,d.delcausstr 或者将year_table 换成临时拼凑的子查询 ( select 2000 yyyy union all select 2001 yyyy union all select 2002 yyyy union all select 2003 yyyy ) y
WHERE y.yyyy = to_number(to_char(d.deletedt(+),'yyyy'))
GROUP BY y.yyyy,d.delcausidl,d.delcausstr 或者将year_table 换成临时拼凑的子查询
( select 2000 yyyy
union all
select 2001 yyyy
union all
select 2002 yyyy
union all
select 2003 yyyy
) y