Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Множественная группировка, Группировка по нескольким полям 
:(
    Опции темы
Uvs
Дата 27.11.2009, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 8.8.2007
Где: Челябинск

Репутация: нет
Всего: нет



Всем доброе время! Помогите, не соображу никак. Проблема с группированием в запросе,
если группировка делается по нескольким полям:

select code1, code2, sum®
from table
group by code1, code2;

Как правильно написать запрос?  Пробовал - так:

var query = from q in table group q by q.code1 into gr select new {gr.Key, Сумма = gr.Sum(ff=>ff.r)};

И все! Дальше непонятно .....  Или я чего-то не так делаю?


Заранее спасибо!
PM MAIL ICQ Skype   Вверх
KelTron
Дата 28.11.2009, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 8.10.2006
Где: Красноярск

Репутация: 2
Всего: 38



Код

class Victim 
{
    public string Code1 { get; set; }
    public string Code2 { get; set; }
    public int Price { get; set; }
}

...
var lst = new List<Victim> { 
    new Victim { Code1 = "1", Code2 = "2", Price = 1},
    new Victim { Code1 = "3", Code2 = "1", Price = 2},
    new Victim { Code1 = "1", Code2 = "2", Price = 3},
    new Victim { Code1 = "1", Code2 = "2", Price = 4},
    new Victim { Code1 = "3", Code2 = "3", Price = 5},
};

var res = lst
    .GroupBy(r => new { r.Code1, r.Code2 })
    .Select(gr => new { gr.Key.Code1, gr.Key.Code2, Sum = gr.Sum(i => i.Price) });

foreach (var item in res)
{
    Console.WriteLine("Code1 = {0}, Code2 = {1}, Sum = {2}", item.Code1, item.Code2, item.Sum);
}




--------------------
Тысячами незримых нитей обвивает тебя Закон. Разрубишь одну - преступник. Десять - смертник. Все - Бог.
Эвенгар Салладорский, основатель Школы Тьмы.
PM MAIL   Вверх
Uvs
Дата 30.11.2009, 06:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 69
Регистрация: 8.8.2007
Где: Челябинск

Репутация: нет
Всего: нет



Спасибо за ответ! Прототип заработал. Книгу Ратца, к сожалению в воскресение только скачал.
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | LINQ (Language-Integrated Query) | Следующая тема »


 




[ Время генерации скрипта: 0.1104 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.