Как в MySql сделать автонумерацию полей?

Поля id(int) | user_id(int)
Как сделать, что бы поле id нумеровалось по порядку, в зависимости от user_id
Пример
id | user_id
_____________
1 | 1
2 | 1
3 | 1
1 | 2
2 | 2
4 | 1
3 | 2
1 | 3
  • Вопрос задан
  • 898 просмотров
Пригласить эксперта
Ответы на вопрос 1
denman1985
@denman1985
SQL, Oracle Forms/Reports dbd
В мануале:
https://dev.mysql.com/doc/refman/5.7/en/example-au...
Есть такой пример, похожий на ваш:
CREATE TABLE animals (
    grp ENUM('fish','mammal','bird') NOT NULL,
    id MEDIUMINT NOT NULL AUTO_INCREMENT,
    name CHAR(30) NOT NULL,
    PRIMARY KEY (grp,id)
) ENGINE=MyISAM;

INSERT INTO animals (grp,name) VALUES
    ('mammal','dog'),('mammal','cat'),
    ('bird','penguin'),('fish','lax'),('mammal','whale'),
    ('bird','ostrich');

SELECT * FROM animals ORDER BY grp,id;


+--------+----+---------+
| grp    | id | name    |
+--------+----+---------+
| fish   |  1 | lax     |
| mammal |  1 | dog     |
| mammal |  2 | cat     |
| mammal |  3 | whale   |
| bird   |  1 | penguin |
| bird   |  2 | ostrich |
+--------+----+---------+


Основная идея в создании составного Primary Key и Auto_Increment.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы