Предыдущий и следующий элемент в базе данных (prev/next)
- Подробности
- Категория: MySQL
- Просмотров: 228
Часто для перелинковки требуется...
Предыдущий и следующий элемент в базе данных (prev/next). Например, для id100 это id99 и id101
Есть несколько способов:
1 способ
следующий элемент :
SELECT *
FROM `my_table`
WHERE id = (SELECT (id)
FROM my_table
WHERE position = ($position+1))
LIMIT 1
Предыдущий элемент:
SELECT *
FROM my_table
WHERE id = (SELECT (id)
FROM my_table
WHERE `position` = ($position-1))
LIMIT 1
2 способ:
Следующий элемент:
SELECT * FROM foo WHERE id > 100 ORDER BY id LIMIT 1;
Предыдущий элемент:
SELECT * FROM foo WHERE id < 100 ORDER BY id DESC LIMIT 1;