2013-07-20 32 views
1

我在使用實體SQL計數空值時遇到了問題。entity sql count null

代碼在SQL:

SELECT Table.City, COUNT(*) 
FROM Table 
GROUP BY Table.City 

和LINQ到實體:

var query1 = from g in context.Table 
      group g by g.City into mygroup 
      select new { mygroup, c = mygroup.Count() }; 

都返回正確值:

NULL 4 
Boston 7 
Canberra 1 
London 5 
Melbourne 5 
New York 4 
Paris 15 
Sydney 4 

然而,實體SQL代碼編寫如:

string queryString1 = "SELECT city, COUNT(g.City)" + 
         "FROM Entities.Table AS g " + 
         "GROUP BY g.City as city"; 

回報:

NULL 0 
Boston 7 
Canberra 1 
London 5 
Melbourne 5 
New York 4 
Paris 15 
Sydney 4 

爲什麼的NULL不能正確計算?我該如何解決它?

回答