MySQL:索引名(lastName,firstName)

MySQL:索引名(lastName,firstName),mysql,Mysql,这是我阅读的教程中的查询 CREATE TABLE Employee ( id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, departmentId TINYINT UNSIGNED NOT NULL COMMENT "CONSTRAINT FOREIGN KEY (departmentId) REFERENCES Department(id)", firstName VARCHAR(20) NOT NULL, last

这是我阅读的教程中的查询

CREATE TABLE Employee (
id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
departmentId TINYINT UNSIGNED NOT NULL
    COMMENT "CONSTRAINT FOREIGN KEY (departmentId) REFERENCES Department(id)",
firstName VARCHAR(20) NOT NULL,
lastName VARCHAR(40) NOT NULL,
email VARCHAR(60) NOT NULL,
ext SMALLINT UNSIGNED NULL,
hireDate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
leaveDate DATETIME NULL,
INDEX name (lastName, firstName),
INDEX (departmentId)
)
索引名(lastName,firstName)
的功能是什么

如果我的问题不清楚,请通知我

谢谢你,
GusDe

索引名(lastName,firstName)
正在创建一个附加索引,以便在使用lastName进行查询时快速查找,无论是否使用第一个索引名

它是一个复合索引,因为它包含两列

添加了本教程的作者“猜测”员工通常会被按姓名或部门ID查找。这就是他或她创建两个附加索引的原因

--在大多数dbms系统中,主键索引是自动为您创建的

在现实生活中,仅仅依靠“猜测”表中哪些列应该被索引是不明智的。相反,使用“慢速查询”日志()来确定哪些查询执行缓慢,以及如何加快执行速度。通常,答案是添加另一个或两个索引

另外,索引的缺点是它们增加了在表中添加、更新或删除数据所需的时间,因为必须修改表和索引。索引的第二个缺点是它们占用了数据库中的空间。但如今存储成本很低

由于大多数数据库的读操作远远多于写操作,因此索引提供的查询加速通常远远超过成本。

索引名(lastName,firstName)
正在创建一个附加索引,以便在使用lastName(有或没有第一个)进行查询时快速查找

它是一个复合索引,因为它包含两列

添加了本教程的作者“猜测”员工通常会被按姓名或部门ID查找。这就是他或她创建两个附加索引的原因

--在大多数dbms系统中,主键索引是自动为您创建的

在现实生活中,仅仅依靠“猜测”表中哪些列应该被索引是不明智的。相反,使用“慢速查询”日志()来确定哪些查询执行缓慢,以及如何加快执行速度。通常,答案是添加另一个或两个索引

另外,索引的缺点是它们增加了在表中添加、更新或删除数据所需的时间,因为必须修改表和索引。索引的第二个缺点是它们占用了数据库中的空间。但如今存储成本很低


由于大多数数据库的读操作远远多于写操作,因此索引提供的查询加速通常远远超过成本。

它是一个复合索引(索引表列的2个)。您可以在这里阅读更多内容:它是一个复合索引(索引表的2列)。您可以在这里阅读更多内容:谢谢larry,这个
索引
问题让我再次痛苦地学习基本MySQL:)谢谢larry,这个
索引
问题让我再次痛苦地学习基本MySQL:)