как проверить следующий элемент в запросе linq 2 sql - PullRequest
1 голос
/ 09 июля 2011

У меня есть такая таблица:

position             title
---------------------------
1                     "t1"
2                     "t1"
3                     "t2"
4                     "t1"
5                     "t2"

Я хочу отфильтровать заголовок "t1", но для позиций, в которых текущая и следующая позиции имеют 1 разницу.В соответствии с этим, если Я хочу сначала "t1", результат должен быть [1,2].

Как я могу написать этот запрос, используя linq 2 sql?

1 Ответ

2 голосов
/ 09 июля 2011

Звучит так, будто вы хотите самостоятельного объединения:

var query = from item1 in db.Items.Where(x => x.title == "t1")
            from item2 in db.Items.Where(x => x.title == "t1")
            where item1.position + 1 == item2.position
            select item1; // Adjust however you want, e.g. new { item1, item2 }

Теперь я не знаю, будет ли это на самом деле работать в SQL ... но логически это то, что вы хотите.

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