Как выбрать первые 10 строк в MySQL

607
23 января 2017, 18:57

Подскажите как организовать поиск. Нужно выводить следующие, либо предыдущие 10 строк. К примеру: последний результат строки закончился id 12, а следующие строки с id 27,28,29.. Т.е нужно как то запоминать последний результат, зная в какую сторону идет поиск, вперед или назад. Буду очень признателен если поможете.

Answer 1

Чем не устраивает LIMIT 0,10? Для MySql это аналог TOP 10 из MS SQL.

SELECT
  `ID`,
  `TIMESTAMP_X`,
  `LOGIN`,
  `PASSWORD`,
  `CHECKWORD`,
  `ACTIVE`,
  `NAME`
FROM `b_user`
WHERE 1 = 1
AND id > 5
LIMIT 0, 2;

Вы спрашиваете также не только десять "следующих" строк, но и "десять предыщущих". Тут вам нужно просто поменять направление при помощи ORDER BY, т.к. отрицательные значения в LIMIT нельзя использовать.

SELECT
  `ID`,
  `TIMESTAMP_X`,
  `LOGIN`,
  `PASSWORD`,
  `CHECKWORD`,
  `ACTIVE`,
  `NAME`
FROM `b_user`
WHERE 1 = 1
AND id < 7
ORDER BY `ID` DESC
LIMIT 0, 2;

READ ALSO
Сортировка символов строки

Сортировка символов строки

Есть строка, сортировать буквы(символы) строки по алфавиту

539
Как узнать размера массива JSON в mysql?

Как узнать размера массива JSON в mysql?

Мне необходимо в триггере узнать размер массива JSON,но я не знаю как узнать её,знаю что можно так

423
Sugar ORM как в запросе взять boolean

Sugar ORM как в запросе взять boolean

Не могу вытянуть данные с запросом на булевое значениеЗапрос делаю так:

503
Отладка java for web

Отладка java for web

Пытаюсь писать серверную часть на JavaРазвернул maven-проект со Spring MVC, вникаю в мануал

355