group ... into en C#
Agrupar dentro de una consulta y seguir consultando sobre los grupos.
var commits = new[]
{
(Author: "ada", Files: 3), (Author: "alan", Files: 1),
(Author: "ada", Files: 5), (Author: "kurt", Files: 2),
};
// group ... by ... into g continúa la consulta sobre los grupos
var summary =
from c in commits
group c by c.Author into g
orderby g.Sum(c => c.Files) descending
select $"{g.Key}: {g.Count()} commits, {g.Sum(c => c.Files)} files";
Console.WriteLine(string.Join("\n", summary));
Cómo funciona
group c by c.Author into greinicia la consulta por grupo.g.Key,g.Count()yg.Sum(...)resumen cada autor.orderbyclasifica los grupos, no las filas.
Palabras clave y builtins usados aquí
bydescendingfromgroupinintoneworderbyselectstringvar
El intento, en números
- Líneas
- 14
- Caracteres a escribir
- 415
- Tokens
- 94
- Ritmo de tres estrellas
- 85 tpm
Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 66 segundos.
Paso 3 de 3 en Sintaxis de consulta; paso 12 de 17 en LINQ a fondo.