count
Id
MYSQL версия 8.0 , и вы можете заказать name столбец
name
Я пытался, но не получил никакого решения.
Моя таблица выглядит следующим образом ( Сотрудник имя таблицы )
+------+-------+-------+ | Id | Name |address| +------+-------+-------+ | 111 | Sam | xyz | | 112 | Mike | xyz | | 113 | Carol | xyz | | 113 | Bob | xyz | | 113 | John | xyz | | 116 | Adam | xyz | | 116 | David | xyz | +------+-------+-------+
Я хочу запустить sql запрос, который выдаст такой результат, если Id такое же увеличение счетчика
+------+-------+-------+ | Id | Name | count | +------+-------+-------+ | 111 | Sam | 1 | | 112 | Mike | 1 | | 113 | Carol | 1 | | 113 | Bob | 2 | | 113 | John | 3 | | 114 | Adam | 1 | | 114 | David | 2 | +------+-------+-------+
Функция ROW_NUMBER() может генерировать ваш текущий столбец count, более или менее:
ROW_NUMBER()
SELECT Id, Name, ROW_NUMBER() OVER (PARTITION BY Id ORDER BY Name) count FROM yourTable ORDER BY Id, Name;
Обратите внимание, что ROW_NUMBER требует MySQL 8 +.
ROW_NUMBER