Вы не зашли.
Главная » SQL » Объединение SELECT из нескольких таблиц
#1. WebGraf Off (1)
Участник
2010.01.24 12:12
Как объединить запросы по выводу значений таблиц понятно, а как если нужно сумму вывести?
К примеру
Код:
SELECT SUM(`cost`) FROM `stata` WHERE `mes`="' . $pref . '";
SELECT SUM(`cost`) FROM `stata2` WHERE `mes`="' . $pref . '";
SELECT SUM(`cost`) FROM `stata3` WHERE `mes`="' . $pref . '";
Отредактировано WebGraf (2010.01.24 12:12)
#2. Gemorroj Off (107)
Administrator
2010.01.24 13:01
UNION
#3. WebGraf Off (1)
Участник
2010.01.24 16:04
Код:
(SELECT SUM(`stata`.`cost`) FROM `stata` WHERE `mes`="' . $pref . '") UNION
(SELECT SUM(`stata2`.`cost`) FROM `stata2` WHERE `mes`="' . $pref . '") UNION
(SELECT SUM(`stata3`.`cost`) FROM `stata3` WHERE `mes`="' . $pref . '");
неработает в таком примере
вот если без суммы то выборка чудесно происходит
#4. Gemorroj Off (107)
Administrator
2010.01.24 16:04
должно быть ок
Вложения
1.png 98kb {1288x1004} [загрузок: 925]
#5. WebGraf Off (1)
Участник
2010.01.24 16:04
как тогда сумму вывести на страницу?
$var['SUM(`cost`)'] - не выводит ничего у меня
$var['SUM(`stata`.`cost`)'] выводит только 1 таблицы, только смысл унион отпадает
#6. Gemorroj Off (107)
Administrator
2010.01.24 17:05
можно использовать нумерованный массив, а не ассоциативный, можно в запросе указать алиас через оператор AS ( ... SUM(`stata`.`cost`) AS v FROM ....)
#7. WebGraf Off (1)
Участник
2010.01.24 19:07
Код:
$var = mysql_fetch_array(mysql_query("(SELECT SUM(`stata1`.`cost_rur`) AS cost
FROM stata1) UNION
(SELECT SUM(`stata2`.`cost_rur`) AS cost
FROM stata2) UNION
(SELECT SUM(`stata3`.`cost_rur`) AS cost
FROM stata3); "));
 
echo $var['cost'];
в чем ошибка?
#8. Gemor
Гость
2010.01.24 20:08
Код:
(SELECT SUM(cost_rur) AS cost1 FROM stata1)
UNION
(SELECT SUM(cost_rur) AS cost2 FROM stata2)
UNION
(SELECT SUM(cost_rur) AS cost3 FROM stata3);
#9. WebGraf Off (1)
Участник
2010.01.24 20:08
Код:
$week = mysql_fetch_array(mysql_query("(SELECT SUM(`cost_rur`) AS cost,
COUNT(`cost_rur`) AS kol
FROM stata1 WHERE
`msg`='" . $pref . "') UNION
(SELECT SUM(`cost_rur`) AS cost,
COUNT(`cost_rur`) AS kol
FROM stata2 WHERE
`msg`='" . $pref . "') UNION
(SELECT SUM(`cost_rur`) AS cost,
COUNT(`cost_rur`) AS kol
FROM stata3 WHERE
`msg`='" . $pref . "'); "));
 
$var = $week['cost'];
Выводит сумму из первой таблицы
#10. Gemorroj Off (107)
Administrator
2010.01.24 21:09
Ты все данные вгоняешь в переменные с именами cost и kol. Давай разным выборкам разные имена.
Страниц: 1 2 3 Все
Главная
WEB
PunBB Mod v0.6.2
0.014 s