Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> запрос самый частопокупаемых товаров 
:(
    Опции темы
NieL
Дата 11.1.2011, 22:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 214
Регистрация: 10.2.2008

Репутация: нет
Всего: 1



Есть 2 таблицы:

товары (id, name, type)

заказы (id, prod_id)

задача: вывести тип товара, который чаще всего заказывают (товары.type)

СУБД MS SQL Server

Пытаюсь сделать через вложенный запрос, но ничего не выходит (нужно учесть что несколько товаров могут иметь одинаковое максимально значение)

SELECT type FROM товары WHERE id = (SELECT TOP 1 prod_id FROM заказы GROUP BY prod_id ORDER BY COUNT(prod_id) DESC)

PM MAIL   Вверх
Deniz
Дата 13.1.2011, 07:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 6
Всего: 44



Цитата(NieL @  12.1.2011,  00:29 Найти цитируемый пост)
(нужно учесть что несколько товаров могут иметь одинаковое максимально значение)
и какой выводить?
Если все, то как-то так:
Код
select t.type, count(z.prod_id)
from товары t
  join заказы z on t.id = z.prod_id
group by t.type
having count(z.prod_id) = (SELECT TOP 1 COUNT(prod_id) FROM заказы GROUP BY prod_id ORDER BY COUNT(prod_id) DESC)



--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
Zloxa
Дата 13.1.2011, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 53
Всего: 161



Цитата(Deniz @  13.1.2011,  07:24 Найти цитируемый пост)
Если все, то как-то так:

Код

select top 1 WITH TIES t.type, count(z.prod_id) cnt
from товары t
  join заказы z on t.id = z.prod_id
group by t.type
order by cnt desc

?


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
Deniz
Дата 13.1.2011, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 6
Всего: 44



Zloxa, к сожалению с конструкцией WITH TIES не знаком.


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Составление SQL-запросов | Следующая тема »


 




[ Время генерации скрипта: 0.0444 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.