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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> получить след. и превид. строку, одним или несколькими запросами 
V
    Опции темы
Date
Дата 29.4.2008, 07:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 221
Регистрация: 22.3.2006
Где: Алматы

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



Здравствуйте!

У меня такая вот ситуация. Есть запрос:
Код

select id, name, album from photo where album=33634;



результат: 

Код

+-------+------+-------+
| id    | name | album |
+-------+------+-------+
| 29197 | 12_4 | 33634 |
| 39866 | _0   | 33634 |
| 20307 | 12_3 | 33634 |
|  7106 | _2   | 33634 |
| 25917 | _0   | 33634 |
| 43717 | _1   | 33634 |
| 93359 | 12_1 | 33634 |
| 84360 | _3   | 33634 |
| 13847 | 12_2 | 33634 |
| 59384 | 12_0 | 33634 |
|  9535 | _1   | 33634 |
| 45597 | _2   | 33634 |
| 60755 | _1   | 33634 |
| 51847 | _0   | 33634 |
| 56110 | _1   | 33634 |
| 50498 | _2   | 33634 |
| 74707 | _3   | 33634 |
| 30741 | _4   | 33634 |
| 89154 |      | 33634 |
| 92443 | _0   | 33634 |
| 32804 | _1   | 33634 |
+-------+------+-------+
21 rows in set (0.00 sec)


далее пользователь выбирает одну из записей для работы с ней:
Код

select id, name, album from photo where id=9535;


Код


+------+------+-------+
| id   | name | album |
+------+------+-------+
| 9535 | _1   | 33634 |
+------+------+-------+
1 row in set (0.08 sec)


как мне получить следующею и предыдущею запись?
т.е. согласно данного примера это будут записи с id: 59384 и 45597

--------------------
Люди не будьте свиньями, Бросайте мусор в урны.
PM MAIL WWW   Вверх
Akina
Дата 29.4.2008, 08:19 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


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

Репутация: 106
Всего: 454



Цитата(Date @  29.4.2008,  08:16 Найти цитируемый пост)
как мне получить следующею и предыдущею запись?

Никак. До тех пор пока в запросе не определена сортировка по уникальной совокупности полей, понятия порядка записей в нем не существует, и два выполнения одного и того же запроса имеют право вернуть те же записи, но в разном порядке (то же касается группы файлов, у которых совпадает значение совокупности полей сортировки при ее неуникальности).
Следует: ввести сортировку и при второй выборке ориентироваться на нее. Для упрощения можно ввести в запрос вычисляемое поле "номера записи в выборке". Однако и оно не поможет при асинхронном изменении данных.

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


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Feldmarschall
Дата 29.4.2008, 10:49 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

Репутация: 3
Всего: 32



Date, определив же для себя порядок сортировки, ты легко сможешь получить следующую/предыдущую, поскольку сортировка - это .по сути - сравнение больше-меньше
PM   Вверх
Date
Дата 13.5.2008, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 221
Регистрация: 22.3.2006
Где: Алматы

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



Feldmarschall, Akina,  Спасибо! принял во внимания Ваши замечания  построил правельно запрос, и решил своию проблему..

--------------------
Люди не будьте свиньями, Бросайте мусор в урны.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




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


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

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