Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Реально ли воткнуть group by перед right join / left join?  [new]
дед3
Guest
Добрый день всем
Кто знает Возможно ли по пути следования запроса
select avg(field1)
from T1 left join T2 on T1.field1 = T2.field2
сгруппировать до момента соединения?
27 ноя 11, 21:12    [11667831]     Ответить | Цитировать Сообщить модератору
 Re: Реально ли воткнуть group by перед right join  [new]
Glory
Member

Откуда:
Сообщений: 104751
Вы знаете, что такое вложенный запрос ?
Ничего, что результат может быть разным ?

Сообщение было отредактировано: 27 ноя 11, 21:14
27 ноя 11, 21:13    [11667833]     Ответить | Цитировать Сообщить модератору
 Re: Реально ли воткнуть group by перед right join / left join?  [new]
дед3
Guest
Glory,

Это и надо чтобы он был разным. Хочу понять как это сделать ?
27 ноя 11, 21:27    [11667867]     Ответить | Цитировать Сообщить модератору
 Re: Реально ли воткнуть group by перед right join  [new]
Glory
Member

Откуда:
Сообщений: 104751
select ... from (select ... from ...) as mysubquery join ...
27 ноя 11, 21:31    [11667881]     Ответить | Цитировать Сообщить модератору
 Re: Реально ли воткнуть group by перед right join / left join?  [new]
дед3
Guest
Glory,

У меня 2 поля из T1 и одно поле из T2. Связывать их надо left join. Да наверно так правильно, но когда я пишу в первом (внешнем селекте) список полей, на них не удается выполнить привязку, кроме того что из другой таблицы T2 . А для внутреннего селекта не удается привязать тот для которого нужно связывать с Т2

Вот как то так получается

SELECT T1.field1, T2.field2, avg(T2.field1)
FROM (select, T1.field1, T2.field2, avg(T2.field1)

from T1) as subquery left JOIN
T1 ON subquery.field1 = Outcome.field1 and
subquery.field2 = Outcome.field2
GROUP BY subquery.field1, subquery.field2
27 ноя 11, 21:47    [11667930]     Ответить | Цитировать Сообщить модератору
 Re: Реально ли воткнуть group by перед right join / left join?  [new]
Двоичник
Member

Откуда: Бобруйск
Сообщений: 334
select t.f1, t2.field2 from T2 t2
inner join
(select avg(field1) as f1 from T1 group by field2) t
on t.f1 = t2.field2

попробуй так
27 ноя 11, 21:48    [11667931]     Ответить | Цитировать Сообщить модератору
 Re: Реально ли воткнуть group by перед right join / left join?  [new]
Двоичник
Member

Откуда: Бобруйск
Сообщений: 334
или CTE

;with cte (av_f) as (
select avg(field1)
from T1
)
select av_f, t2.field2 from cte c join T2 on c.av_f = T2.field2
27 ноя 11, 21:50    [11667940]     Ответить | Цитировать Сообщить модератору
 Re: Реально ли воткнуть group by перед right join / left join?  [new]
дед3
Guest
Двоичник, Ок спс.
27 ноя 11, 21:55    [11667958]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить