NULL проблем с MSSQL

0 отговора 0 прегледа
#1

NULL проблем с MSSQL

Здравейте, имам следната таблица:

Kod1 Kod2 Kod3 Value1 Value2
1 1 null 20 0
2 1 null 20 100
1 2 1.5 40 150
2 2 null 40 0
2 2 9.1 40 150
2 2 9.1 20 150

Трябват ми броя и сумата от поле Value2 групирани по полета Kod1, Kod2 и Kod3 в зависимост от стойността на поле Value1 (20 или 40), т.е. :

kod1 kod2 kod3 sum20 broi20 sum40 broi40
-------------------------------------------------------------------------------------
1 1 null 0 1 0 0
1 2 1.5 0 0 150 1
2 1 null 100 1 0 0
2 2 null 0 0 0 1
2 2 9.1 150 1 150 1

Справката:
Select kod1, kod2, kod3,
(select sum(value2) from table t1 where t1.value=20 and t1.kod1=t.kod1 and t1.kod2=t.kod2 and t1.kod3=t.kod3) as sum20,
(select count(value2) from table t2 where t2.value=20 and t2.kod1=t.kod1 and t2.kod2=t.kod2 and t2.kod3=t.kod3) as broi20,
(select sum(value2) from table t3 where t3.value=40 and t3.kod1=t.kod1 and t3.kod2=t.kod2 and t3.kod3=t.kod3) as sum40,
(select count(value2) from table t4 where t4.value=40 and t4.kod1=t.kod1 and t4.kod2=t.kod2 and t4.kod3=t.kod3) as broi40
from table t
group by kod1, kod2, kod3

не работи, тъй като в поле Kod3 има стойности NULL... :( Имате ли идея как би трябвало да преобразувам справката?
Благодаря предварително...

Отговор