Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.15;
Скачать: CL | DM;

Вниз

Связывание трех таблиц   Найти похожие ветки 

 
N&N   (2003-04-17 16:51) [0]

Привет мастера будьте так снисходительны
подскажите особо тупому как составить правильный запрос для соединения трех таблиц. Суть дела такова
в каждой таблице есть одинаковые поля field_id, в t1 первичный ключ, а в t2 и t3 внешние.
Надо сделать запрос чтобы в первой колонке выбирались фамилии из 1-й таблицы, а во второй и третьей суммировались значения из 2-й и 3-й таблиц.
У меня при таком запросе
select t1.FIO, sum(t2.field1), sum(t3. field1)
from table1 t1
join Table2 on t1.field_id=t2.field_id
join Table3 on t1.field_id=t3.field_id
group by t1.FIO
выдает какую-то дребедень


 
Johnmen ©   (2003-04-17 17:07) [1]

Какую ?


 
samalex   (2003-04-17 17:15) [2]

после join Table2 забыл t2, Table3 ... t3


 
Yuraz ©   (2003-04-17 17:19) [3]

where
a=b
c=d
e=f
типа так, поля свои подставь.


 
N&N   (2003-04-18 08:40) [4]

Дребедень такого вида: когда присоединяю таблицу t3, то все суммы во 2-й колонке увеличиваются на количество раз, равное числу записей для каждой фамилии


 
ЮЮ ©   (2003-04-18 08:50) [5]

Так и должно быть, произведение, однако.
Не знаю как в IB со вложенными запросами, типа

SELECT t1.FIO, sum1, sum2
FROM
Table1 t1
LEFT JOIN (
SELECT field_id, sum(field1) sum1
FROM Table2
GROUP by field_id
) st2 ON t1.field_id = st2.field_id
LEFT JOIN (
SELECT field_id, sum(field1) sum2
FROM Table3
GROUP by field_id
) st3 ON t1.field_id = st3.field_id

Если не поддерживаются, то подзапросы - во View, или всё это объединение - в ХП


 
Johnmen ©   (2003-04-18 09:23) [6]

select
t1.FIO,
(select sum(t2.field1) from Table2 t2
where t1.field_id=t2.field_id) as s1,
(select sum(t3. field1) from Table3 t3
where t1.field_id=t3.field_id) as s2,
from table1 t1
group by t1.FIO


 
N&N   (2003-04-23 07:49) [7]

Всем большое спасибо за помощь, с вашей помощью заработало



Страницы: 1 вся ветка

Текущий архив: 2003.05.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
7-47032
Sergey_
2003-03-19 15:41
2003.05.15
Работа с Com портом


3-46576
AlexAlex
2003-04-21 13:21
2003.05.15
Проблемы с типом Float на Informix при переходе PC ->Sun


3-46660
sanbah
2003-04-24 09:34
2003.05.15
Связанные таблицы


1-46790
Checist [root]
2003-05-02 04:18
2003.05.15
Нажатие клавиш


14-46973
rain3092
2003-04-26 16:02
2003.05.15
Delphi 7