有关面试问到的一个关于数据库的问题。

2021-08-19 16:00:47 +08:00
 cnzmz

被面试官问道自己没理解,搜了下没找到答案。 单表查询,怎么最优。 SELECT 字段名 FROM 表名 查询一个字段,怎么最优。 我回答的是直接使用主键查询是最优的。 他告诉我,加一个关键字是最优解,具体是什么情况他就没告诉我了。 今天搜了一下,没找到具体的答案。

1644 次点击
所在节点    问与答
14 条回复
xupefei
2021-08-19 16:14:47 +08:00
他在扯淡。加一个关键字结果还一样吗
nekoneko
2021-08-19 16:19:00 +08:00
他可能说的是加一个 字段名索引最优
A555
2021-08-19 16:19:01 +08:00
什么关键字?
tabris17
2021-08-19 16:23:20 +08:00
在 SQL 语句前加一个注释关键字,达到性能最优:

# SELECT * FROM ... ...
dengshen
2021-08-19 19:01:53 +08:00
@tabris17 天秀
potatowish
2021-08-19 19:14:33 +08:00
他说的关键字就是索引字段吧,主键只是其中之一
ellermister
2021-08-19 19:29:52 +08:00
我也问一个被问到的
select * from table where a='xx' and b like "key%" limit 10
除了加索引,还有啥办法优化?😢
bestwaytowait
2021-08-19 20:32:36 +08:00
没懂,还能怎么优化。谁来说说
teliang
2021-08-20 08:27:43 +08:00
他想问的是覆盖索引的使用?
cnzmz
2021-08-20 09:31:53 +08:00
@teliang 不清楚呢
cnzmz
2021-08-20 09:32:10 +08:00
@potatowish 不太确定
Solace202
2021-08-20 10:26:27 +08:00
不会是 limit 1 吧?
piecezzz
2021-08-20 10:27:28 +08:00
@Solace202 噗,笑出声
jindeq
2021-08-20 17:18:15 +08:00
@ellermister a 加索引,ab 默认值均不为 null,因为 a 走索引且 b 已经需要回表所以 select *在查询层面没有优化空间

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/796794

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX