Какова максимальная сумма структуры sql для mySQL? - PullRequest
0 голосов
/ 04 октября 2011

TABLE_A имеет поле (id, имя)

--------------------------------------
id   |    name
--------------------------------------
1   |     X

2   |     Y

3   |     Z
--------------------------------------

TABLE_B имеет поле (id, table_a_id, сумма)

=====================================
id  |   table_a_id   |  amount 
=====================================
1   |    1                | 10

2   |    1                |  5

3   |    2                |  5 

4   |    1                |  5

5   |    3                |  20

6   |    1                |  10

=======================================

Я хочу отобразить этоПожалуйста, помогите о структуре запросов для MySQL. Спасибо.

=====================================
name    |    amount
=====================================
X           |    30

Z           |    20

Y           |    5
--------------------------------------------------------------

1 Ответ

2 голосов
/ 04 октября 2011

Это то, что вам нужно:

select max(ta.name) name, coalesce(sum(tb.amount), 0) amount
from Table_A ta
left join Table_B tb
on ta.id = tb.table_a_id
group by ta.id

LEFT JOIN гарантирует, что если у вас есть W в таблице A без строк в таблице B, будет отображаться W.

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