преобразование группового выражения SQL в LINQ - PullRequest
2 голосов
/ 19 мая 2009

Мне очень трудно преобразовать это выражение запроса в выражение LINQ.

SELECT 
    r.Disc_code
    ,r.SEX 
FROM RACE r     
WHERE r.EVENT_CODE = 100 
GROUP BY 
    r.SEX
    , r.disc_Code
order by r.disc_code

Я могу работать с одной таблицей, но я не видел ни одного примера, который объединяет два выражения группы в stackoverflow или MSDN. Я что-то упустил?

Ответы [ 3 ]

2 голосов
/ 19 мая 2009

Может быть, что-то вроде этого:

        var results = from r in dataContext.Race
                      where r.EVENT_CODE == 100
                      orderby r.Disc_Code ascending
                      group r by new { r.Sex, r.Disc_Code } into g
                      select g.Key;
2 голосов
/ 19 мая 2009

Вот пример группировки по нескольким столбцам в VB.NET.

Dim query = From r In db.Race _
            Where r.EVENT_CODE = 100 _
            Order By r.disc_Code _
            Group By Key = New With {r.Sex, r.disc_Code} Into Group _
            Select Key, Group
1 голос
/ 19 мая 2009

Для группировки по нескольким критериям вы должны сделать что-то вроде этого:

var query = from book in books
group book by new {book.author, book.editor} into books;

для доступа к ним:

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