|
Josh ↓
|
 |
|
30 Январь, 2009, 03:51:27
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: нинзя Карма: 48
Сообщений: 1574 Сила слова: 3.05
|
Есть задача по написанию запроса:
1.есть таблица
-------------------------
|product_name|date_of_buy|
-------------------------
| гайка | 12.11.1980|
| гайка | 12.11.1980|
| гайка | 13.11.1980|
| болт | 11.11.1980|
2. что требуется:
2.1 Первая сортировка по первой букве имени что-то вроде (ORDER BY product_name DESC)
2.2 Вторая сортировка количеству записей с этим именем
2.3 Естественно GROUP BY product_name
2.4 Вот основной гемор: при всём этом в группе на каждую букву только 20 топовых
Возможно ли такое сделать средствами одного запроса?
|
|
|
|
|
Записан
|
Иногда мне кажется, что все ебанулись. В остальное же время я в этом уверен.
|
|
|
|
phpdude ↓
|
 |
|
30 Январь, 2009, 03:56:19 , спустя 4 минуты 52 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
я - ЭМО
Группа: в ухо Карма: 344
Сообщений: 20780 Сила слова: 1.66
|
Есть задача по написанию запроса:
1.есть таблица
-------------------------
|product_name|date_of_buy|
-------------------------
| гайка | 12.11.1980|
| гайка | 12.11.1980|
| гайка | 13.11.1980|
| болт | 11.11.1980|
2. что требуется:
2.1 Первая сортировка по первой букве имени что-то вроде (ORDER BY product_name DESC)
2.2 Вторая сортировка количеству записей с этим именем
2.3 Естественно GROUP BY product_name
2.4 Вот основной гемор: при всём этом в группе на каждую букву только 20 топовых
Возможно ли такое сделать средствами одного запроса?
2.4 условие невозможно с этим всем совместить.
|
|
|
|
|
Записан
|
забанен. могу забанить других, пишите в личку BEER. Helping ugly people have sex since 1862.
|
|
|
|
Josh ↓
|
 |
|
30 Январь, 2009, 04:00:35 , спустя 4 минуты 16 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: нинзя Карма: 48
Сообщений: 1574 Сила слова: 3.05
|
я думаю что как раз условие 2.4 надо вынести на первый план - не выгребатьже всё, а потом пыхой сортировать?
|
|
|
|
|
Записан
|
Иногда мне кажется, что все ебанулись. В остальное же время я в этом уверен.
|
|
|
|
phpdude ↓
|
 |
|
30 Январь, 2009, 04:16:34 , спустя 15 минут 59 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
я - ЭМО
Группа: в ухо Карма: 344
Сообщений: д-о-х-у-я! Сила слова: 1.66
|
я думаю что как раз условие 2.4 надо вынести на первый план - не выгребатьже всё, а потом пыхой сортировать?
2/4 условие вообще не выполнить так просто))) это достаточно сложная операция, если я не торможу конечно. по хорошему надо вести учет букаф и ставить галочку мол эти элементы входят в топ-20 или не входят. легко организуеца на тригерах. :) ибо я на хабре с человеком по поводу таких запросов както аз 2ое суток общался))) решили что надо галку, иначе запрос аля битрикс получится. где будет уйма вложенных запросов + всякие if + limits и having'и.
|
|
|
|
|
Записан
|
забанен. могу забанить других, пишите в личку BEER. Helping ugly people have sex since 1862.
|
|
|
|
Josh ↓
|
 |
|
30 Январь, 2009, 04:21:36 , спустя 5 минут 2 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: нинзя Карма: 48
Сообщений: 1574 Сила слова: 3.05
|
ПАРДОН - Я НЕ ТАК ВИДИМО ВЫРАЗИЛСЯ!!
топ 20 подразумеваеться те продукты, которые уже отсортированы по первой букве, затем по количеству, тоесть топ, это те которых больше
|
|
|
|
|
Записан
|
Иногда мне кажется, что все ебанулись. В остальное же время я в этом уверен.
|
|
|
|
Givi ↓
|
 |
|
30 Январь, 2009, 04:44:44 , спустя 23 минуты 8 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Адекваты Карма: 42
Сообщений: 2305 Сила слова: 1.82
|
Уже пробовал подобное сделать (на категорию по две новости): решено было, что легче в два запроса.
|
|
|
|
|
Записан
|
Все, что говорят другие - неправда! До тех пор, пока ты сам в это не поверишь. Если человек дурак, то... чур это не я!
|
|
|
|
CTAPbIu_MABP ↓
|
 |
|
30 Январь, 2009, 04:49:03 , спустя 4 минуты 19 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
мавр
Группа: в ухо Карма: не нужна
Сообщений: 5187 Сила слова: 1.81
|
Givi, почитай про UNION
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
Josh ↓
|
 |
|
30 Январь, 2009, 04:57:32 , спустя 8 минут 29 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: нинзя Карма: 48
Сообщений: 1574 Сила слова: 3.05
|
Givi, почитай про UNION
ты предлагаешь юнионом по каждой букве делать?
|
|
|
|
|
Записан
|
Иногда мне кажется, что все ебанулись. В остальное же время я в этом уверен.
|
|
|
|
CTAPbIu_MABP ↓
|
 |
|
30 Январь, 2009, 06:43:06 , спустя 1 час 45 минут 34 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
мавр
Группа: в ухо Карма: не нужна
Сообщений: 5187 Сила слова: 1.81
|
Josh, тебе нет, ему да
|
|
|
|
|
Записан
|
java.lang.OutOfMemoryError
|
|
|
|
Givi ↓
|
 |
|
30 Январь, 2009, 07:17:36 , спустя 34 минуты 30 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: Адекваты Карма: 42
Сообщений: 2305 Сила слова: 1.82
|
CTAPbIu_MABP
У меня тоже были дополнительные условия. Просто сокращенно привел задачу из своей потому, что на этом этапе загвоздка была и у меня и у Джоша она почти тут же.
Да и потом мое решение (запись в файл ака кеширование) дало положительный результат в виде: один раз зацепить данные, и из файла в готовом виде их отдавать - минус 1 запрос :)
|
|
|
|
|
Записан
|
Все, что говорят другие - неправда! До тех пор, пока ты сам в это не поверишь. Если человек дурак, то... чур это не я!
|
|
|
|
Josh ↓
|
 |
|
30 Январь, 2009, 07:20:28 , спустя 2 минуты 52 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Группа: нинзя Карма: 48
Сообщений: 1574 Сила слова: 3.05
|
решение не скажу, выкрутились как-то другим способом - каунт писали в таблицу, а поиск по первой букве вырубили вообще. Просто не мое ТЗ было. Я хер отставил бы это так :):):)
|
|
|
|
|
Записан
|
Иногда мне кажется, что все ебанулись. В остальное же время я в этом уверен.
|
|
|
|