面试题答案
一键面试- 创建多列索引的SQL语句:
CREATE INDEX idx_employees_first_name_hire_date ON employees (first_name, hire_date);
- 索引字段顺序的影响:
- 索引的最左前缀原则:在查询中,如果使用了索引的最左前缀字段,索引就能有效发挥作用。在这个例子中,
first_name
是最左前缀字段。如果查询条件是WHERE first_name = 'John' AND hire_date > '2020 - 01 - 01'
,索引会有效利用first_name
和hire_date
字段进行快速查找。 - 若查询条件仅为
WHERE hire_date > '2020 - 01 - 01'
,由于没有最左前缀字段first_name
,该索引不会被使用,查询性能可能不会提升。所以将经常在查询条件中最先出现的字段放在索引的最前面(这里是first_name
),可以最大化索引的使用效率,提高查询性能。
- 索引的最左前缀原则:在查询中,如果使用了索引的最左前缀字段,索引就能有效发挥作用。在这个例子中,