Имя: Пароль:
1C
 
Как просуммировать в запросе
0 VNV
 
27.01.06
12:21
Есть Таблица1

Поле 1 Поле 2 Сумма1

таблица как бы не свернута, то есть комбинации поле 1 и поле 2 могут повторяться

Есть Таблица 2

Поле 1 Поле 2 Сумма 2 Сумма 3

Прле 1 и Поле 2 те же типы и смысл что в первой таблице, и тоже могут повторяться комбинации


Хочу получить таблицу

Поле 1 Поле 2 Сумма 1 Сумма 2 Сумма 3

Чтобы комбинации Поле 1 и поле 2 были уникальны (как бы свернута таблица), а суммы соответственно просуммировались по поле 1 и поле 2


Наверно, мне в запросе нужно Внутреннее соединение и функция Сумма, может ещё что-то и как их использовать, чтобы все и просуммировалось и свернулось?
1 France
 
27.01.06
12:22
distinct
Group By
2 VNV
 
27.01.06
13:05
(1) Спасибо!
Сделала вот так

"ВЫБРАТЬ РАЗЛИЧНЫЕ
   |    Т1.Поле1 КАК Поле1,
   |    Т1.Поле2 КАК Поле2,
   |    СУММА(Т1.Сумма1) КАК Сумма1,
   |    СУММА(Т2.Сумма2) КАК Сумма2,
   |    СУММА(Т2.Сумма3) КАК Сумма3
       |ИЗ
   |    Документ.ТакойТо.Т1 КАК Т1
   |        ПОЛНОЕ СОЕДИНЕНИЕ Документ.ТакойТо.Т2 КАК Т2
   |        ПО Т1.Поле1 = Т2.Поле1
   |            И Т1.Поле2 = Т2.Поле2
   |ГДЕ
   |    Документ.ТакойТо.Ссылка = &Ссылка
   |
   |СГРУППИРОВАТЬ ПО
   |    Т1.Поле1,
   |    Т1.Поле2";


Если напримерситуация такая
Т1
а в 1
а в 1
а в 1
а в 1
Т2
а в 2 2

то получаю
а в 4 8 8

то есть сумма 2 и сумма 3 суммируются столько раз, сколько сворачивалась первая таблица
Как этого избежать?
Сейчас сначала  соединяется, потом суммируется

А мне нужно как бы сначала обе таблицы свернуть и просуммировать независимо, а потом соединить..
3 bearmik
 
27.01.06
13:25
А если во вложенном запросе объединить 2 таблицы через ОБЪЕДИНИТЬ ВСЕ, а зачем уже во "внешнем" сгрупиировать?
4 rsv
 
27.01.06
13:31
select distinct A.T1,A.T2,Sum(A.S1),Sum(A.S2)
from
(

select distinct?? A.поле1 Т1,поле2 Т2 ,Sum(Сумма1) S1,0 S2 from  табл1 group by поле1,поле2

union all

select distinct?? поле1 Т1,поле2 Т2,Sum(Сумма1) S1,Sum(Сумма2) S2  from  табл2 group by поле1,поле2

)A  
group by A.T1,A.T2
5 bearmik
 
27.01.06
13:41
А зачем вы все используете Distinct?
6 VNV
 
27.01.06
14:49
Спасибо большое!!!!
Все получилось!

Подскажите, пожалуйста, где можно почитать про запросы в восьмерке?
Книга описание встроенного языка как -то не жизненно все описывает.
7 bearmik
 
27.01.06
14:50
(6) Покажи текст то ... Что получилось то?
8 vde69
 
27.01.06
14:52
(6) Книга рулит, только там нет сложных примеров а так все понятно, да и читать надо от корки до корки, иначе можно пропустить важняк
9 VNV
 
27.01.06
14:53
Текст такой же, как подсказал rsv, только на русском и с нужными именами :)
Первое тестирование (пока не полное) прошло удачно
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан