Me gustaría realizar una consulta agregada en una DataTable para crear otra DataTable. No puedo alterar el SQL que se usa para crear la DataTable inicial.Efficient DataTable Group Por
original DataTable: (todo es un int)
TeamID | MemberID
-------|-----------
1 | 1
1 | 2
1 | 3
2 | 4
2 | 5
resultado deseado:
TeamID | MemberIDCount
-------|--------------
1 | 3
2 | 2
Si se tratara de SQL tan sólo pudiera hacer
Select TeamID, Count(*) From Table Group By TeamID
pero en mi solicitud, la única forma en que sé cómo manejar esto sería algo como esto:
Dictionary<int,int> d = new Dictionary<int,int>();
foreach (DataRow dr in dt.Rows)
{
if (d.ContainsKey(dr.ID))
{
d[dr.ID] = d[dr.ID] + 1;
}
else
{
d.Add(dr.ID, 1);
}
}
¿Hay una manera mejor?
+1 para la utilización del conjunto 'System.Data.DataSetExtensions'. – Oliver
funciona muy bien! ¡Gracias! –