Наличие проблем с пониманием linq в ключевое слово

1)

в ключевое слово создает временный идентификатор для хранения результатов присоединения, Группа или выберите пункты.

Я предполагаю, что в ключевое слово можно использовать только в рамках группы , , Присоединяйтесь или выберите пункты?

2)

A) Прочитал, что когда в используется в составе в составе группы или Выберите пункты , он разделяет запрос на две половины и из-за того, что переменные диапазона, объявленные в Первая половина запроса всегда выходит из охвата во второй половине запроса. ПРАВИЛЬНО?

b) но когда в в используется в рамках в рамках присоединиться к пункту , переменные разгонов никогда не выходят из прицела в запросе (если запрос также не содержит Группа ... в или Выберите ... в ). Я предполагаю, что это связано с в , а не сращивание запроса в двух половинах при использовании с . Присоединиться к пункту ?

C) Выражение запроса состоит из от предложения из , за которым следует дополнительный корпус запроса (, где, пусть пункты) и должен заканчиваться либо , выберите группы Пункт.

d) если в действительно вспомогательные запросы на две половины, в следующем примере группа пункт со стороны тела:

        var result = from c1 in a1
                     group c1 by c1.name into GroupResult
                     select ...

Спасибо


Ответ на Уфук:

а)

после группы, когда вы получите последовательность этого Ienumerable>

не работает Groupby Оператор возвращает результат типа IENumerable > , а не Ienumerable >

b) не смог бы стать аргуи, что группа ... в или Присоединяйтесь к ... в Сращивание запроса в том смысле, что первая половина Запрос по крайней мере концептуально должен работать до того, как вторая половина запроса может бежать?

Ответить Robotsushi:

Чем больше я думаю об этом, тем больше я чувствую, что мой вопрос довольно бессмыслен не имеет практического значения, что так когда-либо. Еще ...

Когда вы говорите, что он получает разделение. Вы имеете в виду объем переменных Получается разделенный или сгенерированный запрос SQL SCLET

Вот цитата:

во многих случаях переменные диапазона на одной стороне этого разделения не могут быть смешивается с переменными диапазона на другой стороне. В ключевое слово Это часть этой группы GROUP-BY используется для связи или соединения Две половинки этого запроса. Как таковой, он отмечает границу в среде запроса, над которыми переменные диапазона обычно не могут подняться. То Переменные диапазона выше в ключевоее ключевоение дни выйти из прицела в последнем Часть этого запроса.

Мой вопрос заключается в том, будут ли обеловные половины все еще считаются одним запросом, и так как таковой запрос все еще состоит всего за три части. Если это так, то в моем примере кода (в разделе D)) Групповое предложение является частью тела. Но если обе половины считаются двумя запросами, то каждая из двух запросов будет состоять из трех частей


2. Ответить на Robotsushi:

Этот кусок вашего запроса оценивается как один потянутом данных.

Я не знаком с термином «Data Pull», поэтому я догадаю, что то, что вы пытались сказать, это то, что первая половина запроса выполняет / оценивает как единицу, а затем вторая половина Запрос принимает результаты из первого половины и использует результаты в его выполнении / оценке? Другими словами, концептуально у нас есть два запроса?

8
задан user702769 12 September 2011 в 01:05
поделиться