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

Вопрос по SQL   Найти похожие ветки 

 
Max Zyuzin ©   (2002-09-13 11:43) [0]

Приветствую всех.
Возникла такая вот загвоздка...
Есть таблица, куда постоянно добавляются записи пусть будет Tab2, у нее 2 нужных поля - UserName (FK), Num.
Есть база в котороую преиодически збрасывается итог (суммируется по num) пусть будет tab1 у нее есть тоже 2 нужных поля UserName(PK), SumNum.
В общем необходимо посмотреть сколько всего num у нас на данный момент.
Строю примерно такой запрос -

select tab1.UserName, tab1.SumNum + sum(tab2.num)
from tab1 left join tab2
od tab1.UserName = tab2.UserName
group by tab1.UserName


На что мне говорят что поле tab1.SumNum нету не в агрегатных столбцах не в group by а мне надо бы сумму его с суммой num из tab2...

То есть

select tab1.UserName, tab1.SumNum, sum(tab2.num)
from tab1 left join tab2
od tab1.UserName = tab2.UserName
group by tab1.UserName, tab1.SumNum


так оно конечно работает... а можно ли сделать что бы они суммировались сразу и выдавались одним столбцрм?


 
ЮЮ ©   (2002-09-13 11:48) [1]

SELECT UserName,SumNum+SumNum2 SumAll from (
select tab1.UserName, tab1.SumNum, sum(tab2.num) SumNum2
from tab1 left join tab2
od tab1.UserName = tab2.UserName
group by tab1.UserName, tab1.SumNum
) SumQuery


 
ЮЮ ©   (2002-09-13 11:49) [2]

или
select tab1.UserName, sum(tab1.SumNum+tab2.num) SumNum
from tab1 left join tab2
od tab1.UserName = tab2.UserName
group by tab1.UserName, tab1.SumNum


 
ЮЮ ©   (2002-09-13 12:11) [3]

Кстати, tab2.num может оказаться NULL, что приведёт к проблемам при сложении, следует заменить на isNull(tab2.num,0) as num


 
Max Zyuzin ©   (2002-09-13 12:15) [4]

>ЮЮ © (13.09.02 12:11)
Совместив твой первый и последний ответ, получил нужный результат. спасибо :) (а то у меня были те самые проблеммы при сложении)



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

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



Память: 0.45 MB
Время: 0.012 c
3-7774
greengen
2002-09-14 14:37
2002.10.03
Перенос данных


3-7868
Alinka
2002-09-13 16:33
2002.10.03
Help! помогите , пожалуйста!


1-7934
siliks330
2002-09-19 16:38
2002.10.03
Как можно изменить регион ЧУЖОГО окна?


1-7962
Irisha
2002-09-23 22:36
2002.10.03
Можно ли в TDrawGrid вставить комбобокс


3-7874
strahov
2002-09-09 17:40
2002.10.03
Потушите пожар в мозгах !!!!!




   Наверх