2013-01-07 73 views
0

我在數據表中有以下數據,這是示例數據。我想在數據表中得到12,13的出現,通常在數據表中會有10-20萬行。檢查數據表中出現的單詞的出現

Customer | quantity | Product | Code 

1   | 3   | Product | 12 
2   | 4   | Product | 13 
3   | 1   | Product | 12 
4   | 6   | Product | 13 

回答

0

怎麼樣簡單for each loop

private int getCount(int yourSearchDigit) 
{ 
    int counter = 0; 
    foreach (DataRow dr in youDataTable.Rows) 
    { 
     if (Convert.ToInt32(dr["Code"]) == yourSearchDigit) 
     counter++; 
    } 
    return counter; 
} 
0

您可以使用Linq-To-DataTable

int[] allowedCodes = new []{ 12, 13 }; 
var rows = table.AsEnumerable() 
       .Where(r => allowedCodes.Contains(r.Field<int>("Code"))); 

但是,如果你在數據表10-20萬行的,你應該考慮做過濾數據庫本身。

如果你想知道電話號碼,他們會出現:

int count = table.AsEnumerable() 
       .Count(r => allowedCodes.Contains(r.Field<int>("Code"))); 
+0

所以纔會此計數已經發生的時間數量。 –

+0

@JimBrad如果你做了.Count()就可以了。 –

+0

@JimBrad:編輯我的答案,展示如何在沒有選擇任何東西的情況下對行進行計數。您也可以在Thomas提到的「Where」之後添加沒有謂詞的「Count」。 –

相關問題