SQL, list if has at least one value for each property I have the following query:

SELECT        
    m.MilgaId, 
    opt.PropertyId, 
    sd.PropOptionId As StudentOptId

FROM           
     Milga AS m 
        INNER JOIN
        PropertyOptionInMilga AS poInMil 
            ON m.MilgaId = poInMil.MilgaId 
        INNER JOIN
        PropertyOption AS opt 
            ON poInMil.PropertyOptionId = opt.PropertyOptionId 
        LEFT OUTER JOIN
        StudentData AS sd 
            ON opt.PropertyOptionId = sd.PropOptionId AND sd.UserId = 'A8F60C49-960F-4A6D-A759-925077607C5A'
WHERE        
    (m.IsEnable = 1) AND 
    (m.IsSpecial = 0)

    GROUP BY 
        m.MilgaId, 
        opt.PropertyId, 
        sd.PropOptionId, 
        m.IsEnable, 
        m.IsSpecial  
    HAVING  
        (
            m.IsEnable = 1 AND
            m.IsSpecial = 0
         )
    ORDER BY 
        m.MilgaId


Query results:

MilgaId PropertyId  PropOptionId
937       90            2291
937       132           null       &lt;-----  132 with null
937       132           2434       &lt;-----  132 has one without null so it's in result
938       25            38
938       91            NULL        &lt;----- 
938       132           2434
939       201           2600
939       202           null


I would like to get all the rows for MilgaId when all its PropertyId has at least one value

The is the results I need:

MilgaId PropertyId  PropOptionId
937       90            2291
937       132           2434


** MilgaId=937 is in the results because it has two propertyId: 90 &amp; 132, while 132 is null but also 2434.

Milga=938 is out because for PropertyId=91 there is no value.
This is a start   

select Milga.* 
from Milga 
join ( select MilgaId, count(dictinct(PropertyId)) as cnt  
       from Milga 
       group by(MilgaId) ) m1
  on Milga.MilgaId =  m1,MilgaId
join ( select MilgaId, count(dictinct(PropertyId)) as cnt 
       from Milga PropOptionId is not null  
       group by(MilgaId) ) m2
  on m2.MilgaId =  m1MilgaId
 and m2.cnt     =  m1cnt 


if the count is the same then all PropertyId have a value