SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 17.09.2012 20:37:39

czp
Участник
Зарегистрирован: 17.09.2012
Сообщений: 2

как сделать выборку, N строк каждой категории

есть таблица
id | category_id | title

подскажите как выбрать по 4 строки с каждой категории?
тоесть, должно вернуть так :
id | category_id | title
1 | 100 | sdfdfsf
2 | 100 | sdafdsf
3 | 100 | sdfddsf
4 | 100 | sdafdsf
5 | 101 | sdfsadsf
6 | 101 | sdfdsdsf
7 | 101 | sdfddssf
8 | 101 | sdfdsdsf
9 | 102 | sddsfdsf
......

Неактивен

 

#2 17.09.2012 21:23:57

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: как сделать выборку, N строк каждой категории

первым запросом выбираете список категорий, потом в цикле для каждой категории 4 строки

Неактивен

 

#3 17.09.2012 21:53:29

czp
Участник
Зарегистрирован: 17.09.2012
Сообщений: 2

Re: как сделать выборку, N строк каждой категории

не самый лучший вариант, там и сервер сляжет

Неактивен

 

#4 17.09.2012 23:11:42

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: как сделать выборку, N строк каждой категории

Если есть индекс на category_id  и запрос на выборку категорий нормально составлен, то не сляжет.

А если так уж хотите одним запросом, то читайте до конца тред http://sqlinfo.ru/forum/viewtopic.php?id=1742

Если будете сравнивать скорости выполнения запросов, то поделитесь - нам тоже интересно, от какого варианта серверу больше сплохеет smile.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson