被面试官问道自己没理解,搜了下没找到答案。 单表查询,怎么最优。 SELECT 字段名 FROM 表名 查询一个字段,怎么最优。 我回答的是直接使用主键查询是最优的。 他告诉我,加一个关键字是最优解,具体是什么情况他就没告诉我了。 今天搜了一下,没找到具体的答案。
1
xupefei 2021-08-19 16:14:47 +08:00 via iPhone
他在扯淡。加一个关键字结果还一样吗
|
2
nekoneko 2021-08-19 16:19:00 +08:00
他可能说的是加一个 字段名索引最优
|
3
A555 2021-08-19 16:19:01 +08:00
什么关键字?
|
4
tabris17 2021-08-19 16:23:20 +08:00 6
在 SQL 语句前加一个注释关键字,达到性能最优:
# SELECT * FROM ... ... |
6
potatowish 2021-08-19 19:14:33 +08:00 via iPhone
他说的关键字就是索引字段吧,主键只是其中之一
|
7
ellermister 2021-08-19 19:29:52 +08:00 via Android
我也问一个被问到的
select * from table where a='xx' and b like "key%" limit 10 除了加索引,还有啥办法优化?😢 |
8
bestwaytowait 2021-08-19 20:32:36 +08:00
没懂,还能怎么优化。谁来说说
|
9
teliang 2021-08-20 08:27:43 +08:00 via iPhone
他想问的是覆盖索引的使用?
|
11
cnzmz OP @potatowish 不太确定
|
12
Solace202 2021-08-20 10:26:27 +08:00
不会是 limit 1 吧?
|
14
jindeq 2021-08-20 17:18:15 +08:00
@ellermister a 加索引,ab 默认值均不为 null,因为 a 走索引且 b 已经需要回表所以 select *在查询层面没有优化空间
|