У меня есть этот код:получать отчетливый MySQL результат одного поля на основе другого поля
select count(distinct affiliate_orders_id) as count
, sum(affiliate_value) as total
, sum(affiliate_payment) as payment
from " . TABLE_AFFILIATE_SALES . " a
left join " . TABLE_ORDERS . " o on (a.affiliate_orders_id = o.orders_id)
where a.affiliate_orders_id = o.orders_id
and o.orders_status >= " . AFFILIATE_PAYMENT_ORDER_MIN_STATUS . "
";
$affiliate_sales_query= tep_db_query($affiliate_sales_raw);
$affiliate_sales= tep_db_fetch_array($affiliate_sales_query);
Итак, $ affiliate_sales [ «общий»] = 128000, когда на самом деле это должно быть 32000 becuase есть несколько affiliate_values и affiliate_orders_id. Некоторые аффилированные_значения имеют одинаковые значения, поэтому они не могут быть разными. У affilaite_orders_id есть все уникальные значения, но есть несколько строк этого и должны быть разными. Затем affiliate_values должен подводить итоги на основе отдельных строк affiliate_orders_id, чтобы получить точную сумму.
Я пытаюсь получить сумму всех affiliate_values, загруженных на сколько различных affiliate_orders_id в таблице.
Что не работает? Это должно работать как запроектированное –
. Я пытаюсь получить сумму полей affiliate_values, но только на основе отдельных полей affiliate_orders_id. Прямо сейчас «total» вытягивает все итоги из этого поля. – sven30
как вы решаете, какую строку вытащить, если есть несколько affiliate_orders_id? –