SELECT sum(amount) as amount , COUNT(userid) as total FROM table1 WHERE userid='1111' union all
SELECT sum(amount) as amount, COUNT(userid) as total FROM table2 WHERE userid='1111' union all
SELECT sum(amount) as amount, COUNT(userid) as total FROM table3 WHERE userid='1111' union all
SELECT sum(amount) as amount, COUNT(userid) as total FROM table4 WHERE userid='1111' union all
SELECT sum(amount) as amount, COUNT(userid) as total FROM table5 WHERE userid='1111'
Я нашел это где-то, но не работал для меня.собирать данные из нескольких таблиц со счетами и суммой
Предлагаемое решение:
Другой вариант, чтобы получить данные из всех таблиц отдельно, а затем отобразить его.
Вопрос:
Я хочу, чтобы получить данные из нескольких таблиц с одним запросом. сумма будет добавлена, и идентификатор пользователя будет подсчитываться из всех таблиц.
Дополнительные примечания: Он должен собрать всю информацию об идентификаторе пользователя = 1111 и сохранить в двух вариантах.
Userid = 1111, может отсутствовать в некоторых таблицах.
Ожидать из будет выглядеть следующим образом:
вашего всего: $ общих | и ваша сумма: $ amount
Основано на предложениях. вот что я получил до сих пор и как я пытаюсь отобразить его. он не отображает ничего без ошибок: Если я использую один запрос, то результаты отображаются в порядке.
<?php
$sqltotal=mysql_query("SELECT SUM(data.Amount) as Amount ,SUM(data.total) as total
FROM
(
SELECT COALESCE(sum(amount),0) as amount , COALESCE(COUNT(userid)) as total FROM table1 WHERE userid='1111'
UNION ALL
SELECT COALESCE(sum(amount),0) as amount, COALESCE(COUNT(userid)) as total FROM table2 WHERE userid='1111'
UNION ALL
SELECT COALESCE(sum(amount),0) as amount, COALESCE(COUNT(userid)) as total FROM table3 WHERE userid='1111'
UNION ALL
SELECT COALESCE(sum(amount),0) as amount, COALESCE(COUNT(userid)) as total FROM table4 WHERE userid='1111'
UNION ALL
SELECT COALESCE(sum(amount),0) as amount, COALESCE(COUNT(userid)) as total FROM table5 WHERE userid='1111'
) as data
");
while($row = mysql_fetch_array($sqltotal))
{
echo "$row[total]";
echo "$row[sum]";
}
//echo "$yourtotal: $row[total]";
?>
это все ваши таблицы взаимосвязаны Сопутствующие? с 'userID' –
@ameya да, все имеют одинаковый идентификатор пользователя. – zeeshan
, тогда вы должны заглянуть в 'joins' –