0 / 0 / 0
Регистрация: 01.08.2013
Сообщений: 17
|
||||||
1 | ||||||
Выбор следующей и предыдущей29.02.2016, 03:11. Показов 2637. Ответов 8
Метки нет (Все метки)
pid int(1) UNSIGNED
cid int(11) UNSIGNED sort int(11) UNSIGNED Зная только pid и cid, как выбрать из БД следующую и предыдущую запись, относительно известной, НО не по pid или cid, а по sort? Например
Повторяюсь.
0
|
29.02.2016, 03:11 | |
Ответы с готовыми решениями:
8
Учет данных предыдущей строки в следующей Реализация кнопки предыдущей и следующей картинки в галерее Создать кнопку перехода к следующей/предыдущей форме Работа с предыдущей и следующей строкой, после найденной |
29.02.2016, 07:24 | 2 | ||||||||||
Что за LIMIT не знаю и парсер SQL-Server 2008 что-то тоже не знает... И сортировать нужно всё-таки по возрастанию наверное...
0
|
1643 / 1144 / 171
Регистрация: 23.07.2010
Сообщений: 6,794
|
|
29.02.2016, 09:17 | 3 |
если MS Sql (в чем сомневаюсь) - row_number()
0
|
0 / 0 / 0
Регистрация: 01.08.2013
Сообщений: 17
|
|
29.02.2016, 13:44 [ТС] | 4 |
Да, что-то я не там вопрос задал.
Это вопрос по MySQL. Можно перенести тему туда? Добавлено через 4 минуты You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1 * Не работает. Вопрос все таки по MySQL. Наверно, Ваш ответ по SQL Server. Добавлено через 2 минуты SELECT * FROM catalog_links WHERE sort>(SELECT MAX(sort) FROM catalog_links WHERE pid=$pid AND cid=$id) ORDER BY sort LIMIT 1 А в таком виде отдает пустую строку.
0
|
29.02.2016, 14:29 | 5 | |||||
Создал таблицу Tbl1 со следующими данными:
pid cid sort 1 1 10 2 2 9 3 3 8 4 4 7 5 5 6 Выполнил запрос
0
|
0 / 0 / 0
Регистрация: 01.08.2013
Сообщений: 17
|
|
29.02.2016, 14:36 [ТС] | 6 |
Дополнение. Нужно выбрать следующую запись по sort, но чтобы pid совпадали. Т.е. уникальным остается только cid.
Добавлено через 7 минут Ваш ответ работает. Можно его чуть-чуть улучшить? Нужно чтобы следующая запись по sort имела тот же pid. Уникальным в этой таблице остается только cid.
0
|
29.02.2016, 14:36 | 7 | |||||
Сообщение было отмечено november_night как решение
Решение
Немного меняем запрос:
0
|
0 / 0 / 0
Регистрация: 01.08.2013
Сообщений: 17
|
||||||||||||||||
29.02.2016, 16:28 [ТС] | 9 | |||||||||||||||
Огромное спасибо! Работает!
Добавлено через 29 минут Можете мне еще чуть-чуть помочь Суть такая, Ваш запрос работает, но мне нужно, чтобы это запрос проверялся еще и в другой таблице.
Наверно, это уже сложно. Изначально запись берется вот так:
Это вообще возможно так связать? Структура БД досталась в наследство. Менять там что-то не могу. Добавлено через 1 час 17 минут
0
|
29.02.2016, 16:28 | |
29.02.2016, 16:28 | |
Помогаю со студенческими работами здесь
9
Visio печатает куски следующей страницы на предыдущей Выполнение следующей команды только после завершения предыдущей Освобождение консоли для выполнения следующей команды без останова предыдущей Удалить строки по критериям из предыдущей или следующей строки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |