Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выбор N максимальных значений для каждого categoryId / 7 сообщений из 7, страница 1 из 1
17.09.2013, 02:27:39
    #38398261
korinf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор N максимальных значений для каждого categoryId
idnamecategoryIdprice1name111002name212003name313004name421005name522006name633007name734008name821509name93150

Можно ли выбрать одним запросом N максимальных значений price для каждого categoryId.

Допустим N = 2 и тогда должно быть:
idnamecategoryIdprice2name212003name313004name421005name522006name633007name73400

А если N=1 то:
idnamecategoryIdprice3name313005name522007name73400

И самое главное это один SQL запрос, без вложенных SELECT
...
Рейтинг: 0 / 0
17.09.2013, 03:10:01
    #38398265
javajdbc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор N максимальных значений для каждого categoryId
korinf,

7489069
...
Рейтинг: 0 / 0
17.09.2013, 03:14:25
    #38398266
korinf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор N максимальных значений для каждого categoryId
javajdbc,

Вопрос тут как раз в том чтобы сделать это без вложенных SELECT
...
Рейтинг: 0 / 0
17.09.2013, 03:44:34
    #38398271
javajdbc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор N максимальных значений для каждого categoryId
korinf,

"оконных" функций в мускл нет, на Оракле
и МССКЛ-е вы сможете это сделать без
сложеных запросов.
А вложены запросы не так уж и страшные
что б их боятся :-)
...
Рейтинг: 0 / 0
17.09.2013, 12:33:27
    #38398691
korinf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор N максимальных значений для каждого categoryId
javajdbckorinf,

"оконных" функций в мускл нет, на Оракле
и МССКЛ-е вы сможете это сделать без
сложеных запросов.
А вложены запросы не так уж и страшные
что б их боятся :-)

Да я их не боюсь. И с вложенным запросом примерно понимаю как можно сделать. Это не рабочий пример, а скорее задача на развитие ума. Не могли бы вы написать как будет выглядеть этот запрос для MSSQL или Oracle ??
...
Рейтинг: 0 / 0
17.09.2013, 12:36:41
    #38398696
qwerty112
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор N максимальных значений для каждого categoryId
korinfДа я их не боюсь. И с вложенным запросом примерно понимаю как можно сделать. Это не рабочий пример, а скорее задача на развитие ума. Не могли бы вы написать как будет выглядеть этот запрос для MSSQL или Oracle ??
спросите в Акцессе
:)
...
Рейтинг: 0 / 0
17.09.2013, 13:16:46
    #38398785
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор N максимальных значений для каждого categoryId
qwerty112korinfДа я их не боюсь. И с вложенным запросом примерно понимаю как можно сделать. Это не рабочий пример, а скорее задача на развитие ума. Не могли бы вы написать как будет выглядеть этот запрос для MSSQL или Oracle ??
спросите в Акцессе
:)да ладно... :)
Код: sql
1.
2.
3.
4.
5.
declare @N int=3;
select top(1) with ties 
   t.*
from myTable t
order by (row_number()over(partition by t.categoryId order by t.price desc)-1)/@N;
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выбор N максимальных значений для каждого categoryId / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]