имеющий и условный счетчик () в запросе linq - PullRequest
6 голосов
/ 26 августа 2009

Я хочу создать этот запрос:

select Something, count(Something) as "Num_Of_Times"
from tbl_results
group by Something
having count(Something)>5

Я начал с этого:

tempResults.GroupBy(dataRow => dataRow.Field<string>("Something"))
   .Count() //(.......what comes here , to make Count()>5?)

1 Ответ

8 голосов
/ 26 августа 2009
from item in tbl_results
group item by item.Something into groupedItems
let count = groupedItems.Count()
where count > 5
select new { Something = groupedItems.Key, Num_Of_Times = count };

ОБНОВЛЕНИЕ: Это даст вам результат как IQueryable<DataRow>:

DataTable dt= new DataTable();
dt.Columns.Add("Something", typeof(int));
dt.Columns.Add("Num_Of_Times", typeof(int));

var results =   (from item in tbl_results
                 group item by item.Something into groupedItems
                 let count = groupedItems.Count()
                 where count > 2
                 select dt.Rows.Add(groupedItems.Key, count)).AsQueryable();

(обратите внимание, что он также заполняет таблицу dt)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...