Вниз
Скачать: CL | DM;

Помогите   Найти похожие ветки 

 
adolf_99 ©   (2002-11-28 12:51) [0]

Есть две таблицы в SQL в одной суммы до 31,10,02 в другой с 01,11,02 если надо посчитать сумму с 01,10,02 (поле sum1)до 10,11,02 (поле sum2) используя в запросе команду union all
дельфя берет только значение из одной таблицы из второй не хочет.
В самом SQL этот запрос работает отлично.


 
Johnmen ©   (2002-11-28 12:54) [1]

Дельфя ничего ни откуда не берет !!!
Берешь ты, своими запросами, которые м.б.некорректны...
Посему приводи их вид...


 
adolf_99 ©   (2002-11-28 12:59) [2]

Вот весь запрос

select (sum (plpa.bpl_sum)) as sum
from plpa
where
plpa.bpl_dat_od>="2002-10-31" and plpa.bpl_a_nanc="1002" and plpa.bpl_b_nanc="2902"
and plpa.bpl_b_key="4" and plpa.bpl_b_an="127003" and plpa.bpl_b_as="302"
and plpa.bpl_dat_od<="2002-11-11" and plpa.bpl_pr_pr="r"
union all
select (sum (plpb.bpl_sum)) as sum1
from plpb
where
plpb.bpl_dat_od>="2002-10-31" and plpb.bpl_a_nanc="1002" and
plpb.bpl_b_nanc="2902" and plpb.bpl_b_key="4" and
plpb.bpl_b_an="127003" and plpb.bpl_b_as="302" and plpb.bpl_pr_pr="r"
and plpb.bpl_dat_od<="2002-11-11"


 
Johnmen ©   (2002-11-28 13:01) [3]

...as sum1...
union all
...as sum1...




 
adolf_99 ©   (2002-11-28 13:10) [4]

пробовал он берет значение только таблицы plpa , а plpb он как-бы вообще не видит


 
Johnmen ©   (2002-11-28 13:19) [5]

Возможно, нет записей в plpb, удовлетворяющих условию...


 
adolf_99 ©   (2002-11-28 13:23) [6]

часть записей в plpa часть plpb


 
Prooksius ©   (2002-11-28 13:41) [7]

А эти 2 запроса отдельно друг от друга работают?
...подожди, у тебя же вроде в результате этого запроса получается 2 строчки с суммами по а и б. А ты используешь полько 1-ю строчку. Так?


 
adolf_99 ©   (2002-11-28 13:50) [8]

В программе я использую две строчки.
Они работают по одному в программе.
В SQL он работает в сборе.


 
Prooksius ©   (2002-11-28 14:12) [9]

2adolf_99 © (28.11.02 13:50)
Вот счас проверил...
select sum(...) as sum from Table1
union all
select sum(...) as sum1 from Table2
этот запрос выдает 2 записи - 1-я сумма по 1-й таблице, 2-я сумма по 2-й.


 
adolf_99 ©   (2002-11-28 15:04) [10]

Prooksius © Большое спасибо увидил что, там две строчки,
а не два столбца


 
passm ©   (2002-11-28 15:16) [11]

А если так:
select (sum (plpa.bpl_sum) + sum (plpb.bpl_sum)) as sum1
from plpa,
plpb
where
(plpa.bpl_dat_od>="2002-10-31" and plpa.bpl_a_nanc="1002" and plpa.bpl_b_nanc="2902"
and plpa.bpl_b_key="4" and plpa.bpl_b_an="127003" and plpa.bpl_b_as="302"
and plpa.bpl_dat_od<="2002-11-11" and plpa.bpl_pr_pr="r")
and
(plpb.bpl_dat_od>="2002-10-31" and plpb.bpl_a_nanc="1002" and
plpb.bpl_b_nanc="2902" and plpb.bpl_b_key="4" and
plpb.bpl_b_an="127003" and plpb.bpl_b_as="302" and plpb.bpl_pr_pr="r"
and plpb.bpl_dat_od<="2002-11-11")


 
passm ©   (2002-11-28 15:22) [12]

Пардон, если plpa или plpb будет пусто, то вернет NULL.


 
passm ©   (2002-11-28 15:34) [13]

Еще пардон, запросы не эквивалентны. Малость поторопился...



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.01 c
6-51876
Pars
2002-10-18 16:05
2002.12.16
Дозвон до провайдера


1-51776
Горлов Евгений
2002-12-04 14:25
2002.12.16
IDispatch type


14-51960
LongIsland
2002-11-22 18:26
2002.12.16
Выпил я или напился?


1-51680
VJar
2002-12-05 18:33
2002.12.16
Признак завершения процесса


3-51571
Брат
2002-11-26 16:43
2002.12.16
Как отловить исключительную ситуацию, которая возникает, когда я




   Наверх