数据库学习问题汇总

本文通过实例演示了在MySQL MyISAM引擎中,自动增长列作为复合索引的一部分时的行为特征。展示了当自动增长列与另一列共同组成索引时,自动增长ID的生成方式,并非按照组合索引的第一列进行排序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Q1.myisam,自动增长列是索引组合的第二列,自动增长列是按照组合索引的第一列排序后递增?

下面的例子怎么解释?

mysql> create table auto_demo
    -> (id smallint not null auto_increment,
    -> aid smallint not null,
    -> name varchar(10),
    -> index(aid,id))engine = myisam;
Query OK, 0 rows affected (0.08 sec)

mysql> insert into auto_demo (aid,name) values(2,'c'),(3,'w'),(1,'s'),(5,'r'),(4,'m');
Query OK, 5 rows affected (0.03 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from auto_demo;
+----+-----+------+
| id | aid | name |
+----+-----+------+
|  1 |   2 | c    |
|  1 |   3 | w    |
|  1 |   1 | s    |
|  1 |   5 | r    |
|  1 |   4 | m    |
+----+-----+------+
5 rows in set (0.01 sec)

mysql> insert into auto_demo (aid,name) values(2,'c'),(3,'w'),(1,'s'),(5,'r'),(4,'m');
Query OK, 5 rows affected (0.00 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from auto_demo;
+----+-----+------+
| id | aid | name |
+----+-----+------+
|  1 |   2 | c    |
|  1 |   3 | w    |
|  1 |   1 | s    |
|  1 |   5 | r    |
|  1 |   4 | m    |
|  2 |   2 | c    |
|  2 |   3 | w    |
|  2 |   1 | s    |
|  2 |   5 | r    |
|  2 |   4 | m    |
+----+-----+------+
10 rows in set (0.00 sec)

mysql> insert into auto_demo (aid,name) values(2,'c');
Query OK, 1 row affected (0.00 sec)

mysql> select * from auto_demo;
+----+-----+------+
| id | aid | name |
+----+-----+------+
|  1 |   2 | c    |
|  1 |   3 | w    |
|  1 |   1 | s    |
|  1 |   5 | r    |
|  1 |   4 | m    |
|  2 |   2 | c    |
|  2 |   3 | w    |
|  2 |   1 | s    |
|  2 |   5 | r    |
|  2 |   4 | m    |
|  3 |   2 | c    |
+----+-----+------+
11 rows in set (0.00 sec)

mysql> insert into auto_demo (aid,name) values(2,'c'),(3,'w');
Query OK, 2 rows affected (0.00 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql> select * from auto_demo;
+----+-----+------+
| id | aid | name |
+----+-----+------+
|  1 |   2 | c    |
|  1 |   3 | w    |
|  1 |   1 | s    |
|  1 |   5 | r    |
|  1 |   4 | m    |
|  2 |   2 | c    |
|  2 |   3 | w    |
|  2 |   1 | s    |
|  2 |   5 | r    |
|  2 |   4 | m    |
|  3 |   2 | c    |
|  4 |   2 | c    |
|  3 |   3 | w    |
+----+-----+------+
13 rows in set (0.00 sec)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值