Если у вас есть первичный ключ и столбец вы хотите приказать (чтобы получить п-ю строку), вы могли бы сделать что-то вроде:
UPDATE database_table
SET field = 'new_value'
WHERE primary_key IN (
SELECT primary_key
FROM database_table
ORDER BY some_date_column
LIMIT n - 1, 1
)
Edit: я, вероятно, следует добавить один нюанс. Этот ответ может быть технически корректным, но вы, вероятно, не используете его. Я не могу представить слишком много сценариев, где вы действительно хотите обновить строку таблицы nth
. Обычно вы должны обновлять таблицы только на основе первичных ключей. Обновление n-й строки, скорее всего, нарушит ваше приложение, если одновременно используют несколько пользователей (или даже несколько сеансов с одним и тем же пользователем).
real Ответ: вероятно, вы должны изменить свой код для обновления на основе первичного ключа.
Почему бы просто не обратиться к нему по его первичному ключу? –
Это вариант, но мне нужно будет многое изменить в моем коде, чтобы работать таким образом. Если бы не было другого варианта, я сделаю это. – user3697768
n-я строка относительна. Вы не знаете, как будет сортироваться таблица, если вы не указали ее. –