Получение предыдущей записи из таблицы SQL - PullRequest
0 голосов
/ 07 июня 2018

Я выясняю, как можно получить следующий adid, используя это:

$sql_next = "SELECT adid FROM table WHERE adid > $current_adid ORDER BY adid 
LIMIT 1";
if ($result = $mysqli->query($query)) {
while ($row = $result->fetch_assoc()) {

$next = $row['adid'];

echo '<a href="https://someurl.com/'.$next.'">Next</a>';

}
}

Однако я не уверен, как получить предыдущий adid.Я попытался изменить WHERE adid < $current_adid, но это не сработало.Что я должен использовать, чтобы получить предыдущую запись из таблицы SQL?

1 Ответ

0 голосов
/ 07 июня 2018

Вам нужно обратить больше, чем просто сравнение:

SELECT adid
FROM table
WHERE adid < $current_adid
ORDER BY adid DESC
LIMIT 1;

Направление ORDER BY также необходимо поменять местами.

Вы также можете заменить их на:

SELECT MIN(adid)
FROM table
WHERE adid > $current_adid;

SELECT MAX(adid)
FROM table
WHERE adid < $current_adid;

Функции агрегирования могут сделать логику более понятной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...