Я хочу знать порядковое (?) Положение записи, которая возвращается в запросе.MySQL: получить номер позиции записи из запроса
Общий ответ в Интернете заключается в следующем:
SET @row=0;
SELECT (@row:[email protected]+1) AS row, ename, empno FROM emp ORDER BY empno;
+-----+--------+-------+
| row | ename | empno |
+-----+--------+-------+
| 1 | SMITH | 7369 |
| 2 | ALLEN | 7499 |
| 3 | WARD | 7521 |
| 4 | JONES | 7566 |
| 5 | MARTIN | 7654 |
| 6 | BLAKE | 7698 |
| 7 | CLARK | 7782 |
| 8 | SCOTT | 7788 |
| 9 | KING | 7839 |
| 10 | TURNER | 7844 |
| 11 | ADAMS | 7876 |
| 12 | JAMES | 7900 |
| 13 | FORD | 7902 |
| 14 | MILLER | 7934 |
+-----+--------+-------+
Но это не работает для меня. Список упорядочен правильно, используя ORDER BY, но столбец строк находится в случайном порядке, а не является последовательным.
Надеясь, что кто-то будет знать ответ на этот вопрос, а не советуя мне, почему я не должен это делать (есть много технических причин, слишком много, чтобы идти в!)