Форум: "Базы";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];
ВнизНакопление по разным базам. Найти похожие ветки
← →
ViktorZ © (2006-02-27 14:30) [0]Скажем получил я результатом запроса некие поля. Пусть их 2. Далее я обращаюсь к другой базе и все тем же запросом получаю еще 2 поля но с другими значениями. Как мне их сложить?
Пример:
1результат:
Номер Сумма
1 1000
2 2000
3 3000
2 результат
Номер Сумма
1 3000
2 4000
3 5000
Ответ:
1 4000
2 6000
3 8000
← →
Sergey13 © (2006-02-27 14:34) [1]Что в твоем вопросе есть "база"? И какого она типа?
← →
ViktorZ © (2006-02-27 14:37) [2]База есть таблички. Обрабатывая их запросом получаем почти тоже самое что в примере. База парадокс. ДЕЛФИ 7. Блин который раз галочки забываю поставить.
← →
Neo Trinitron © (2006-02-27 14:43) [3]На самом деле запрос должен быть один а не два, а между ними надо написать строку UNITED all, кажется.
← →
ViktorZ © (2006-02-27 14:44) [4]UNITED all
Скорее Union ALL, но он вроде мне тогда вернет не сумму полей а просто их выведет.
← →
Neo Trinitron © (2006-02-27 14:44) [5]Сорри, Union
← →
Sergey13 © (2006-02-27 14:47) [6]Идея такова
Select Номер, Sum(Сумма) from
(запрос1
union all
запрос2)
Group By Номер
Но LocalSQL не поддерживает подзапросы. Однако для Парадокса можно сделать QBE файл (ищи в справке) содержащий подзапрос и в головном запросе указать его.
ЗЫ: На практике я этого не делал (т.к. с парадоксом не работаю), так что могу и ошибаться (я много могу 8-).
← →
Neo Trinitron © (2006-02-27 14:48) [7]Дык получив нужные записи, можно относится к ним как к таблице и отдельным запросом посчитать нужные суммы
select Sum(G.field2)
from (Select field1, field2
from Table1
union all
Select field1, field2
from Table2) as G
group by field1
если опять чего не напутал...
← →
Neo Trinitron © (2006-02-27 14:50) [8]> Но LocalSQL не поддерживает подзапросы
Мой пример был для Ms Sql, так что звыняйтэ.
← →
ViktorZ © (2006-02-27 18:51) [9]Select Номер, Sum(Сумма) from
(запрос1
union all
запрос2)
Group By Номер
Спасибо.Но может просто записать данные полученного запроса в одну таблицу, другого запроса в другую, третьего запроса в третью, а потом сложить не получица?
← →
Sergey13 © (2006-02-27 18:59) [10]2 [9] ViktorZ © (27.02.06 18:51)
Это называется - использование временных таблиц. Тоже метод - хотя и не бесспорный. Только зачем тогда в разные таблицы писать? Пиши в одну раз структура одинакова - и складывать ничего не придется.
← →
ViktorZ © (2006-02-27 19:01) [11]Гы у меня еще идея возникла обсчитать все там 6 скажем. И каждый результат загнать в массив а потом сложить массивы.А по поводу временный таблиц: это такие которые я сам пишу а потом с ними работаю?
← →
Sergey13 © (2006-02-27 19:10) [12]2[11] ViktorZ © (27.02.06 19:01)
>А по поводу временный таблиц: это такие которые я сам пишу а потом с ними работаю?
А после работы удаляю.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.013 c