[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сложение полей в одно общее число с разных таблиц
MillerLight
Всем знатокам привет!

Решил вывести общее число заметок на сайте. Но дело в том что они находятся в разных таблицах...
По отдельности могу это сделать.

Например рядом с категорией вывести общее число заметок именно этой категории....

А вот как сложить все заметки со всех таблиц в одно число не догоняю... sad.gif

PHP
<?php 
$result1 
mysql_query ("SELECT COUNT(*) FROM table1"$db);
$sum1 mysql_fetch_array($result1);

$result2 mysql_query ("SELECT COUNT(*) FROM table2"$db);
$sum2 mysql_fetch_array($result2);

$result3 mysql_query ("SELECT COUNT(*) FROM table3"$db);
$sum3 mysql_fetch_array($result3);

echo 
"Категория 1 всего - $sum1[0] заметок
         Категория 2 всего - $sum2[0] заметок
         Категория 3 всего - $sum3[0] заметок"
Всего заметок - ???????????????????????????


Пробовал сложить эти полученные переменные. Ничего....



Спустя 26 минут, 24 секунды (22.10.2009 - 11:25) sergeiss написал(а):
Попробуй что-нибудь эдакое - если надо прямо в запросе это сделать
SQL
select (SELECT COUNT(*) FROM table1) + (SELECT COUNT(*) FROM table2) + (SELECT COUNT(*) FROM table3) as sum_all

Или, для твоего случая
PHP
echo $sum1[0]+$sum2[0]+$sum3[0];

Спустя 16 минут, 53 секунды (22.10.2009 - 11:42) MillerLight написал(а):
Благодарю wink.gif сейчас попробую)))

Спустя 48 минут, 54 секунды (22.10.2009 - 12:31) MillerLight написал(а):
Если писать так:
PHP
echo $sum1[0]+$sum2[0]+$sum3[0];


то пишется просто 1+2+1 и не складывается...

Если писать так:
PHP
$resultall mysql_query ("select (SELECT COUNT(*) FROM table1) + (SELECT COUNT(*) FROM table2) + (SELECT COUNT(*) FROM table1) as sum_all")    
$allsum mysql_fetch_array($resultall);

echo 
"Всего заметок - $allsum[0]";

Ошибка... sad.gif

Спустя 2 часа, 2 минуты, 30 секунд (22.10.2009 - 14:33) sergeiss написал(а):
Этот запрос я проверял в Постгре, а не в MySQL. В нем, возможно, и как-то по-другому должно быть. Надо подождать, чтобы спецы именно по MySQL глянули smile.gif

А что касается простой суммы... Ну попробуй по-другому smile.gif
PHP
$sum=$sum1[0]+$sum2[0]+$sum3[0];
echo 
$sum;

Спустя 37 минут, 53 секунды (22.10.2009 - 15:11) Nikitian написал(а):
SQL
SELECT (COUNT(table1.*)+count(table2.*)+count(table3.*)) as sum_all FROM table1, table2,table3
А так?

Спустя 4 часа, 32 минуты, 11 секунд (22.10.2009 - 19:44) MillerLight написал(а):
Спасибо Вам братцы!

А помогло это:

PHP
$sum=$sum1[0]+$sum2[0]+$sum3[0];
echo 
$sum;
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.