
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
11.08.2004, 12:44
|
|||
|---|---|---|---|
|
|||
Просуммировать поля из разных таблиц ? |
|||
|
#18+
Проблема: Есть 3 таблицы А, B, C. A : (Aid, FieldA) B : (Bid, Aid, Cid) C : (Cid, FieldC) Как одним запросом можно просуммировать FieldA и FieldB, для Bid = x ? Например, SELECT SUM(FieldA), SUM(FieldB) FROM A INNER JOIN B USING(Aid) INNER JOIN C USING(Cid) WHERE Bid = x работает только если в A или C при данном х только одна запись. 10x ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2004, 12:57
|
|||
|---|---|---|---|
Просуммировать поля из разных таблиц ? |
|||
|
#18+
select sum(a.A), sum(b.B) from b inner join a on a.aid=b.aid where b.bid=x ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2004, 13:06
|
|||
|---|---|---|---|
|
|||
Просуммировать поля из разных таблиц ? |
|||
|
#18+
извиняюсь ошибся, в верхнем посте имелось ввиду FieldC из таблицы C ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2004, 13:15
|
|||
|---|---|---|---|
Просуммировать поля из разных таблиц ? |
|||
|
#18+
togda i tak vse prekrasno budet rabotat' ) select sum(a.A), sum(c.C) from b join a on a.aid=b.aid join c on c.cid=b.cid where b.bid=x ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2004, 13:33
|
|||
|---|---|---|---|
|
|||
Просуммировать поля из разных таблиц ? |
|||
|
#18+
не будет предположим у нас следующая ситуация А (1, 10), (1, 11), (1, 12) B (1, 3, 2) C (2, 21), (2, 22) select sum(A.FieldA), sum(C.FieldC) from B join A on A.Aid = B.Aid join C on C.Cid = B.Cid where C.Bid = 3 Тогда после JOIN будет (1,10) (2,21) (1,11) (2,21) (1,12) (2,21) (1,10) (2,22) (1,11) (2,22) (1,12) (2,22) После "GROUP BY" (его нет в явном виде, сам мускл его вызывает) Sum(А.FieldA) = 66 (вместо 33) Sum(C.FieldC) = 129 (вместо 43) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&mobile=1&tid=1854902]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 321ms |

| 0 / 0 |
