| |
|
|
| |
to: ГлазастыйМышь
(22.06.2007 в 15:28)
|
| | Если добавить еще одну подчиненную таблицу tc, связь с основной ta по полю aid.
Как вычислить разность:
a1-sum(b1) - sum(с1),
За предыдущую подсказку спасибо, работает! | |
| |
| |
| |
|
|
| |
to: nicolas
(22.06.2007 в 15:17)
|
| | вообще там обычные скобки стоят, просто сам Access потом почему то правит так
SELECT ta.aid, ta.a1-derivedtbl.sumb1 AS itog
FROM ta LEFT JOIN (SELECT tb.aid, Sum(tb.b1) AS sumb1
FROM tb
GROUP BY tb.aid) AS derivedtbl ON ta.aid = derivedtbl.aid
|
| |
| |
| |
| |
|
|
| |
to: ГлазастыйМышь
(22.06.2007 в 07:43)
|
| | Зачем точка после правой квадратной скобки? | |
| |
| |
| |
|
|
| |
to: ДрЮня
(21.06.2007 в 19:07)
|
| | тут надо с лефт джоин, иначе некоторые записи могут пропасть
SELECT ta.aid, ta.a1-derivedtbl.sumb1 AS itog
FROM ta LEFT JOIN [SELECT tb.aid, Sum(tb.b1) AS sumb1
FROM tb
GROUP BY tb.aid]. AS derivedtbl ON ta.aid = derivedtbl.aid
|
| |
| |
| |
| |
|
|
| |
to: nicolas
(21.06.2007 в 18:06)
|
| | могут
надо использовать опреатор IIF, чтобы перевести NULL в "0" | |
| |
| |
| |
|
|
| |
to: ДрЮня
(20.06.2007 в 15:16)
|
| | А что если не для всех записей основной таблицы есть записи в подчиненной, сумма подчиненой будет NULL. Возникнут проблемы с вычислением разницы? | |
| |
| |
| |
|
|
| |
to: nicolas
(20.06.2007 в 14:29)
|
| | вот непонятка:
здесь вложенный запрос, который и вычисляет нужную Вам сумму. | |
| |
| |
| |
|
|
| |
to: Gыwи
(20.06.2007 в 14:12)
|
| | Возможно ли сделать это с "IN" или в поле запроса вставить запрос? | |
| |
| |
| |
|
|
| |
to: nicolas
(20.06.2007 в 13:35)
|
| | примерно так:
SELECT ta.aid, ta.a1-derivedtbl.sumb1 AS itog
FROM ta INNER JOIN [SELECT tb.aid, Sum(tb.b1) AS sumb1
FROM tb
GROUP BY tb.aid]. AS derivedtbl ON ta.aid = derivedtbl.aid; | |
| |
| |
| |
|
|
| | Две таблицы "ta" и "tb" (tb - подчиненая, связь по ключевому полю aID таблицы ta).
Поля таблиц:
ta:aID, a1
tb:bID, aID,b1
Подскажите как составить запрос вычисляющий значение:
a1-sum(b1), суммирование для каждого aID.  | |
| |
| |