Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сортировка по максимальному количеству
 
 автор: grafen   (19.08.2011 в 10:38)   письмо автору
 
 

Всем привет, есть корзина.

Структура: id | idcart | idproduct | kol -> (id | номер корзины | номер продукта | количество определенного продукта)

Для каждого пользователя создается номер корзины (idcart), после чего пользователь добавляет товары в корзину. Каждый товар - это отдельная запись в таблице с id его корзины.
Хочу на основе этих данных, выводить популярные товары, т.е. нужно сделать выборку по полю idproduct таким образом, чтобы сначала выводились самые часто-встречающиеся id-продуктов, после чего, сделать сортировку по количеству этих продуктов. И в самом топе должны быть продукты, которые чаще всего заказывают, а среди этих часто-заказываемых наверху должны быть те, у которых количество больше).
Допустим, есть два товара, каждый из них заказан по 5 раз, но второй товар заказан в количестве на 1 больше, значит его надо выше.

Очень жду помощи, что-то я тут не соображу. Понимаю, что нужен count и group by, но вот как это всё собрать - не пойму.

Заранее спасибо!

  Ответить  
 
 автор: Valick   (19.08.2011 в 11:35)   письмо автору
 
   для: grafen   (19.08.2011 в 10:38)
 

нужна таблица со статистикой самых частовстречающихся, количество заказанных, и тд
если такой таблицы нет, то "баста карапузы... кончилися танцы" ))
ее нужно создавать и для начала хотябы заполнить примерными данными, выгодными с точки зрения маркетологов

  Ответить  
 
 автор: grafen   (19.08.2011 в 11:53)   письмо автору
 
   для: Valick   (19.08.2011 в 11:35)
 

Ну была бы такая таблица, тогда и вопросов бы не было)) Т.е. вообще нереально одними запросами выцепить нужную информацию? Хотя бы по одному полю (idproduct)...

  Ответить  
 
 автор: Valick   (19.08.2011 в 12:52)   письмо автору
 
   для: grafen   (19.08.2011 в 11:53)
 

как вы собираетесь "выцепить" то чего нет?

  Ответить  
 
 автор: cheops   (19.08.2011 в 15:42)   письмо автору
 
   для: grafen   (19.08.2011 в 10:38)
 

Можно начать отталкиваться от следующего запроса
SELECT 
  idproduct,
  COUNT(idproduct) AS freq,
  SUM(kol) AS total
FROM tbl
GROUP BY
  idproduct
ORDER BY
  freq DESC,
  total DESC

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования