现在我遇到一个问题, 我现在有一张表,要去查三个数据,num ,year , type,现在查出来的数据如下
1 2 2012 横向项目
2 1 2014 横向项目
3 1 2011 横向项目
没有2013年的数据 ,表中也没有这一年的数据,现在我要判断年份给13年的的num 加一条数据,num=0,
问怎么写这个SQL
查完之后的数据要如下展示
1 2 2012 横向项目
2 1 2014 横向项目
3 1 2011 横向项目
4 0 2013 横向项目
------解决思路----------------------
先准备一个年份表填上必须要有的年份 t1(year)
在准备一个项目表填上必须要有的项目 t2(type)
SELECT NVL(t3.num,0) AS num
t1.year,
t2.type,
FROM t1
JOIN t2
ON 1=1
LEFT JOIN table1 t3
ON t1.year = t3.year
AND t2.type = t3.type
ORDER BY t1.year, t1.type
------解决思路----------------------
根据日期 最大值最小值之差用connect by 树形生成 然后 在left join