Как извлечь ежедневные продажи из текущих продаж

0

Мне нужна помощь. У меня есть структура таблиц MySQL, как показано ниже. Заказы не являются ежедневными заказами только для общих заказов. Дата - это метка времени. Я хочу видеть трендовые продажи по категориям за последние 3 дня. Я хочу найти, какой продукт тренд в своей категории

id, product_id, cat_id, orders, date
5,  2345,       15,    120,    2018-06-18 00:00:00
6,  2345,       15,    123,    2018-06-19 00:00:00
1,  2345,       15,    137,    2018-06-22 00:00:00
2,  2345,       15,    140,    2018-06-23 00:00:00
7,  456,        55,    127,    2018-06-18 00:00:00
8,  456,        55,    136,    2018-06-19 00:00:00
3,  456,        55,    152,    2018-06-22 00:00:00
4,  456,        55,    176,    2018-06-23 00:00:00

Спасибо

Теги:

2 ответа

0

Я решил проблему. Спасибо

select a.product_id,a.cox-b.az sales from (
SELECT product_id,
        max(orders) AS cox
    FROM
        products
    WHERE
        date > ( CURDATE() - INTERVAL 3 DAY ) group by product_id order by cox desc) a,

(SELECT product_id,
        orders AS az
    FROM
        products
    WHERE
        date > ( CURDATE() - INTERVAL 3 DAY ) group by product_id) b 


       where a.product_id=b.product_id 
        group by a.product_id order by sales desc
0

Вам нужно кастинг как дата, группировка для product_id и cat_id и нисходящее упорядочение по порядковым суммам в соответствии с предполагаемым мной выражением слов:

select product_id, cat_id, count(orders)  as total_orders
  from mytable
 where cast(date as date) >= cast(sysdate()-3 as date)
 group by product_id, cat_id
 order by count(orders) desc;

 product_id cat_id  total_orders
       2345   15         1
        456   55         1

Демо-версия SQL Fiddle

  • 0
    Спасибо мистер Барбарос. После того, как я положил это здесь, моя голова начала работать. Я понял
  • 0
    @TariyelValiyev Пусть что-нибудь легко придет твой дорогой друг :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню