У меня есть таблица, в которой записываются все продажи 350+ товаров в магазине; столбец включает название продукта и дату.
Я работаю над страницей, на которой перечислены самые быстро движущиеся товары, основанные на проценте увеличения продаж, но мой запрос очень медленный, учитывая, что существует более 350 товаров и более 60000 записей.
SELECT product_name, date
FROM data
ORDER BY ((SELECT COUNT(ID)
FROM data
WHERE date='$date2') -
(SELECT COUNT(ID)
FROM data
WHERE date='$date1')) /
(SELECT COUNT(ID)
FROM data
WHERE date='$date1') DESC
Мои знания MySQL весьма ограничены, поэтому любая помощь сообщества будет оценена.
Образец данных:
| id | product_name | date |
| 1 | pen | 2011-04-22 |
| 2 | pencil | 2011-04-22 |
| 3 | pen | 2011-04-23 |
| 4 | pen | 2011-04-23 |
| 5 | pencil | 2011-04-23 |
| 6 | pen | 2011-04-23 |
| 7 | pencil | 2011-04-23 |
Ожидаемый результат:
1 Pen 200% (3-1)/1
2 Pencil 100% (2-1)/1