[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Составить запрос
Страницы: 1, 2
braindbrigada
Есть это, но считает не правильно user posted image

SELECT
s_purchases.product_id AS order_product_id,
SUM(s_purchases.price) AS totalprice,
s_purchases.product_name AS product_name,
COUNT(s_purchases.product_id) AS order_count,
s_products.url AS url,
s_images.filename AS image,
s_variants.price AS price
FROM s_purchases
LEFT JOIN s_products ON s_products.id = s_purchases.product_id
LEFT JOIN s_images ON s_images.product_id = s_products.id
LEFT JOIN s_variants ON s_variants.product_id = s_products.id
LEFT JOIN s_orders ON s_orders.id = s_purchases.order_id
WHERE s_orders.status=2
GROUP BY order_product_id ORDER BY order_count DESC LIMIT 10


Суть составить рейтинг 10-ти самых продаваемых товаров.

Должно выводить: текущую стоимость товара, количество продаж, общую сумму продаж, картинку, url и id
Kopipaster
Ну и в чём запара?

SELECT
`текущую стоимость товара`, `количество продаж`, `картинку`, `url`, `id`
FROM `твоя таблица`
ORDER BY `количество продаж` DESC
LIMIT 10


Ну а в пыхе уже перемножишь `текущую стоимость товара`на `количество продаж`
и выведешь в цикле.
К чему усложнения в SQL запросе?
braindbrigada
Цитата (Kopipaster @ 15.05.2014 - 15:56)
Ну и в чём запара?

SELECT
`текущую стоимость товара`, `количество продаж`, `картинку`, `url`, `id`
FROM `твоя таблица`
ORDER BY `количество продаж` DESC
LIMIT 10


Ну а в пыхе уже перемножишь `текущую стоимость товара`на `количество продаж`
и выведешь в цикле.
К чему усложнения в SQL запросе?

Если бы все в одной таблице было то да, но если внимательно посмотреть на мой запрос станет понятно, что данные из 5 таблиц.
Kopipaster
Ну так одна или 10 какая разница принцип то тот же.
Или у тебя в принципе нет поля `количество продаж` ни в одной из 5 таблиц и надо это количество высчитывать?
braindbrigada
текущая стоимость товара
s_variants.price AS price

LEFT JOIN s_variants ON s_variants.product_id = s_products.id

количество продаж - нужно посчитать в s_purchases.product_id с одинаковым product_id может быть несколько заказов (таблица с купленными товарами)
общую сумму продаж - нужно посчитать в s_purchases.price
картинку - в s_images
s_images.filename AS image

LEFT JOIN s_images ON s_images.product_id = s_products.id

урл - тут
s_products.url AS url

LEFT JOIN s_products ON s_products.id = s_purchases.product_id

ну и id
Игорь_Vasinsky
в mysql группировка по альясу работает?
группируй по s_purchases.product_id

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
braindbrigada
Проблема в общем то в подсчете количества продаж и общей суммы продаж.
braindbrigada
Цитата (Игорь_Vasinsky @ 15.05.2014 - 16:14)
в mysql группировка по альясу работает?
группируй по s_purchases.product_id

результат тот же.
Игорь_Vasinsky
запрос то верно написан

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
braindbrigada
Цитата (Игорь_Vasinsky @ 15.05.2014 - 16:17)
запрос то верно написан

это вопрос или утверждение? ))) тоже думал верно, но по факту получается, что считает все product_id потом меньше и меньше.
Игорь_Vasinsky
Цитата
COUNT(s_purchases.product_id) AS order_count,

а почему не SUM

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
braindbrigada
Цитата (Игорь_Vasinsky @ 15.05.2014 - 16:21)
Цитата
COUNT(s_purchases.product_id) AS order_count,

а почему не SUM

что получится есть три product_id равным 111 применив SUM получим 333... если есть пять product_id равным 123 получим 615 продаж
Игорь_Vasinsky
аа. да меня s_purchases сбило с толку))

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
braindbrigada
Игорь_Vasinsky на вас вся надежда!))) выручайте
Игорь_Vasinsky
SELECT
s_purchases.product_id AS order_product_id,
SUM(s_purchases.price) AS totalprice,
s_purchases.product_name AS product_name,
COUNT(s_purchases.product_id) AS order_count,
FROM s_purchases

GROUP BY s_purchases.product_id ORDER BY SUM(s_purchases.price) DESC LIMIT 10


как посчитает?

только уточни что не так посчитал

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

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