Я запускаю запрос, который возвращает минимум 1000 строк, содержащих имя, сумму в количестве заказа desc. Я хочу, чтобы индекс какого-либо имени из этого массива, я не знаю, как это сделать?
Поскольку я использую Ruby, я использую метод arr.index(name) +1, который возвращает индекс правильно. Но я хочу некоторый запрос MySQL, который дает мне только числа для этого конкретного имени.
В MySQL нет рейтинговой функциональности. Самое близкое, что вы можете получить, это использовать переменную:
SELECT t.*,
@rownum := @rownum + 1 AS rank
FROM TABLE t, (SELECT @rownum := 0) r
Это добавит столбец с именем rank к вашему выводу, который будет уникальным, увеличится и начнется с 1.