2013-10-25 3 views
1

две таблицы, каквысчитывает сумма продаж на основе двух таблиц

table1

+----+-------+-----+ 
| id | sname | sal | 
+----+-------+-----+ 
| 1 | X  | 100 | 
| 2 | Y  | 200 | 
| 3 | Z  | 400 | 
+----+-------+-----+ 

Table2

+----+-------+-----+ 
| id | sname | sal | 
+----+-------+-----+ 
| 1 | A  | 500 | 
| 2 | B  | 200 | 
| 3 | C  | 400 
| 4 A  100 
+----+-------+-----+ 

Обе таблицы, имеющие отношение корабль столбец ID

мне нужно вычислить sum sal group по таблице1.sname в то же время тех, кто соответствует таблице2

выход как

+-------+-------+--------------------- 
| Table1.sname | Table2.sname | sum | 
+-------+-------+-----+ ---------------- 
| A   | W   | 600 | 
| B   | Y   | 200 | 
| B   | F   | 300 | 
| C   | Z   | 400 | 
+-------+-------+---------------------- 



select sum(sal),a.sname,b.sname 
from table1 a, 
    (select id,sname from table2 group by sname,id) as b 
where a.id=b.id 
group by a.sname,b.sname; 

, но его не дали должного о/р

+0

Где ваш SQL код? – Dezigo

+0

Вам необходимо уточнить свой вопрос. Предоставьте дополнительные примеры входных данных с ожидаемым результатом или более подробное описание того, что должно быть сделано –

ответ

1

Ваш вопрос немного неоднозначным ... но, возможно, вы хотите этого.

запрос

select Table11.id, Table1.sname, Table2.sname, (Table1.sal+Table2.sal) as Sum 
from Table1, Table2 
where Table1.id = Table2.id; 

результат

Table1.id | Table2.sname | Table2.sname | sum 
-----------+--------------+--------------+----- 
     1 | a   | d   | 500 
     2 | b   | e   | 700 
     3 | c   | f   | 900 
+0

Этого не ждут – user2793872

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