За последние 24 часа нас посетил 16491 программист и 1562 робота. Сейчас ищут 2089 программистов ...

получить предыдущую и следущую строку

Тема в разделе "MySQL", создана пользователем vikrorpert, 15 май 2016.

  1. vikrorpert

    vikrorpert Активный пользователь

    С нами с:
    13 окт 2010
    Сообщения:
    984
    Симпатии:
    10
    есть запрос

    PHP:
    1. SELECT id FROM `Advert` WHERE category_id=1 AND active=1 and paid=1 ORDER BY seo2 DESC, seo1 DESC, name ASC

    он возвращает данные

    PHP:
    1. 1616
    2. 1622
    3. 1623
    4. 1613
    5. 1597
    6. 1596
    7. 1620
    8. 1610
    9. 1599
    10. 1598
    11. 1631
    беру запись 1598 и хочу получить значения 1599 и 1631
    написал запрос
    PHP:
    1. SELECT * FROM `Advert` WHERE category_id=1 AND active=1 and paid=1 and id>1598 ORDER BY seo2 DESC, seo1 DESC, name ASC limit 1

    получаю строку 1616
    где ошибка?
     
  2. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    Какой запрос, такой и ответ. У тебя стоит лимит 1, значит выдаст только одну запись. Дальше, в условии у тебя стоит айди больше 1598. 1616 больше 1598?
     
  3. vikrorpert

    vikrorpert Активный пользователь

    С нами с:
    13 окт 2010
    Сообщения:
    984
    Симпатии:
    10
    согласен
    как тогда написать запрос?
     
  4. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    Тебе никакой запрос уже не нужен. Ты сделал выборку. У тебя получился массив. В этом массиве ищешь нужное тебе значение, смотришь его ключ. И дальше как по маслу: предыдущее значение $arr[$i-1], следующее $arr[$i+1]
     
  5. vikrorpert

    vikrorpert Активный пользователь

    С нами с:
    13 окт 2010
    Сообщения:
    984
    Симпатии:
    10
    эта выборка выводится на странице в виде списка объектов
    на каждый объект можно кликнуть и посмотреть детали
    вместе с деталями я хочу показать ссылки на предыдущий и следущий объекты
     
  6. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    И? Какая разница, как оно там во фронтенде выглядит и работает?