yarhosting
@yarhosting
Заказывайте программинг: PHP,SQL, JS,jQuery,Joomla

Как реализовать выборку суммарных данных из нескольких таблиц MYSQL?

Нужен отчет по остаткам в разрезе номенклатуры: Продано - Куплено в суммарном и количественном выражении за период.

Прохожусь селектом по таблице nomenclature, присоединяю к ней LEFT JOIN o_ithem, где хранятся сумма и количество по реализации и INNER JOIN o - где хранится дата реализации: Получаю нужные данные по Реализации - все правильно.

Аналогично с Покупкой - тоже все верно получаю.
Но как только делаю вместе и покупку и продажу в этом запросе: LEFT JOIN p_ithem + INNER JOIN p + LEFT JOIN o_ithem + INNER JOIN o - получаю неправильные данные.

В следующем коде ремарками представлен корректно работающий код, если снять ремарки - ошибок не выдает, но данные - не верные. Если заменить ремарки с покупки на реализацию - тоже получается рабочий код.

$q = 'SELECT n.id as id, n.name as name';
		
// $q.=' , sum(pi.sum) as p_sum, sum(pi.count) as p_count '; 
		
$q.=', sum(oi.sum) as o_sum,  sum(oi.count) as o_count ';
		
$q.=' FROM nomenclature  as n';
		
// $q .= ' LEFT JOIN p_ithem as pi ON pi.nomenclature_id=n.id';
// $q .= ' INNER JOIN p ON pi.p_id=p.id';
		
$q .= ' LEFT JOIN o_ithem as oi ON oi.nomenclature_id=n.id';
$q .= ' INNER JOIN o ON oi.o_id=o.id';	
		
$q .= $where.' GROUP BY n.id '.$order;


Как дальше жить?
  • Вопрос задан
  • 44 просмотра
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы