Отправить заявку

MySQL: порядковый номер строки

Порядковый номер строки, что это совершенно не тоже самое, что номер AUTO_INCREMENT, бывает необходимо получить для многих задач.

Если у вас значение AUTO_INCREMENT идет без дырок - можно использовать его, а если из таблицы удалялись записи или AUTO_INCREMENT вовсе отсутствует?

Как узнать порядковый номер строки в MySQL запросе

К огромному сожалению в MySQL нет стандартной функции, которая бы отдавала нам порядковый номер каждой строки. В других базах данных она есть. В ORACLE для этого есть переменная rownum, а в PostgreSQL и msSQL функция ROW_NUMBER().

Пишем свой вариант для MySQL:

set @n:=0;
select @n:=@n+1 as `num`, `name` from `ВАША_ТАБЛИЦА`;

Результатом выполнения запроса будет:

1 АртКиев
2 Дизайн
3 Студио
Другие публикации