2014-10-15 3 views
0

У меня есть две таблицы. Я хочу добавить все значения одного столбца из таблицы 1 ко всем значениям конкретного столбца таблицы 2. Как это сделать?sql запрос для получения суммы двух столбцов из двух разных таблиц

, например

таблица А

Id Name Salary 
1 A 20000 
2 B 30000 

таблица B

Id Name Salary 
1 A 30000 
2 B 40000 

Я хочу, чтобы результат как total salary= sum(salary of table A) + sum(salary of table B)

Вот результат должен прийти, как 120000

ответ

1

ли это с подзапрос:

select a.s + b.s 
from (select sum(salary) as s from a) cross join 
    (select sum(salary) as s from b); 

Или, если одна из таблиц может быть пустым, union all бы лучше:

select sum(salary) 
from (select id, name, salary from a union all 
     select id, name, salary from b 
    ) ab; 
-1

Использование Союз первым. Попробуйте этот запрос:

select sum(salary) from 
(
select sum(Salary) as salary from tableA 
union 
select sum(Salary) as salary from tableB 
) 
+1

Если обе таблицы имеют одинаковую сумму заработной платы, это сообщит о половине правильной суммы. –

Смежные вопросы