Как группируя вывести количество распределенных товаров из MySQL?

Привет всем.
Такая ситуация. есть таблицы в БД (MySQL) #prikhod_tovar и #raspredel_tovar.
Нужно вывести отприходованные товары, которые есть на складе (количество больше 0).
Сделал такой запрос, но ругает.

SELECT
	p_T.`id_prikhod_tovar`,
	p_T.`kod`,
	`p_T`.`kolichestvo`,
	tov.`tovar_name`,
	DATE_FORMAT(p_T.`data_prixod`, '%d.%m.%Y') AS data_prixod,
	p_T.`cena`
FROM
	skladskiy_uchet.prikhod_tovar p_T
LEFT OUTER JOIN skladskiy_uchet.spr_tovari tov ON (tov.`id_tovar` = p_T.`id_tovar`)
LEFT OUTER JOIN skladskiy_uchet.sklad_dostup s_D ON (s_D.`id_sklad_dostup` = p_T.`id_sklad_dostup`)
LEFT OUTER JOIN skladskiy_uchet.raspredel_tovar r_T ON (r_T.`kod` = p_T.`kod`)
WHERE
	s_D.`id_sklad` = 2
AND
	(`p_T`.`kolichestvo` - SUM(`r_T`.`ostatok`)) <> 0
ORDER BY `p_T`.`kod` DESC
  • Вопрос задан
  • 2282 просмотра
Пригласить эксперта
Ответы на вопрос 1
sanchezzzhak
@sanchezzzhak
Ля ля ля...
1 Старайтесь избегать DATE_FORMAT Эту операцию лучше сделать при выводе.
2 <> 0 можно заменить на > 0
Сделайте на sqlfiddle.com некие данные так проще.

Попробуйте сделать count по tov.`id_tovar` c группировкой p_T.`id_tovar`
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы