mysql, как найти последний идентификатор вставленной строки перед заданным идентификатором для конкретного запроса

#mysql

#mysql

Вопрос:

предположим, нам нужно собрать данные из 2 строк таблицы

например :

 select * from table where userid=24
  

и он возвращает, например, 3 строки данных с разным идентификатором строки (автоматическое увеличение), 3,35,68

Я хочу знать, какой идентификатор строки перед строкой с идентификатором 35 (который равен 3) из примерно 68, это 35.

как я могу найти его с помощью запросов mysql?

Спасибо

Комментарии:

1. Не могли бы вы перефразировать вопрос, пожалуйста? Приведенный ниже ответ Джона — это то, что я собирался предложить, но, очевидно, из вашего комментария это не то, что вы хотите.

2. Кажется, то, что они просят, было бы лучше всего выполнено на любом языке, на котором вы работаете с результатами MySQL… В идеале, вы должны возвращать результаты в массиве (который был бы в том же порядке, что и в базе данных), устанавливать указатель на массив с нужным идентификатором, а затем просто изменять указатель массива на единицу…

3. дорогой Джордан, я сделал то, что вы предложили перед моим вопросом. но мне было интересно сделать это с запросами mysql… однако теперь я получил свой ответ. спасибо вам всем

4. @Will A: спасибо за ваше внимание, я нашел ответ.

Ответ №1:

Используя mysql_insert_id() Вот ссылка на то, что вам нужно

http://dev.mysql.com/doc/refman/5.5/en/getting-unique-id.html

ОТРЕДАКТИРОВАНО

Возможно, вы хотели бы использовать запрос, подобный этому

 SELECT * FROM table WHERE rowID < (SELECT rowId FROM table WHERE userid=24)
ORDER BY rowId DESC
LIMIT 1
  

Комментарии:

1. дорогой Джон, это не то, что мне нужно, mysql_insert_id () возвращает идентификатор вставленной строки, мне нужно что-то еще … я могу сделать это с помощью некоторых других трюков, но мне интересно, возможно ли это сделать с помощью одного запроса… У меня есть идентификатор, который в столбце userid этой строки равен, например, 888! я хочу спросить mysql «какой идентификатор последней строки перед заданным идентификатором, идентификатор пользователя которого равен 888 » однако спасибо за ваш ответ

2. @Cyb3r … Взгляните на запрос, который я опубликовал. Это может помочь