回答

收藏

什么是SQL中的索引?

技术问答 技术问答 117 人阅读 | 0 人回复 | 2023-09-13

什么是SQL中的 索引 ?您可以解释或参考以清楚地理解吗?3 z4 f* S! N( Q/ I, j
我应该在哪里使用索引?
8 q* r8 `! z( Y) B                * L0 k1 h5 m: B  R) a4 }+ h6 K
解决方案:
/ t! G4 d! }3 w; ?) P: w+ {               
9 ]1 r5 z4 k" k1 i. b2 @. E
2 m/ _: }# i3 E4 f
# \+ a0 N- |7 _' `' I% K) C                索引用于加速数据库中的搜索。MySQL在此主题上有一些不错的文档(也与其他SQL7 H) X. Q* g! m7 y* T/ z5 T/ B& K3 r1 x
Server相关):http :
2 D  _, N' Q: }) v3 Q  x8 b& Z//dev.mysql.com/doc/refman/5.0/en/mysql-( Y* [: a; M3 h# t+ _4 a# u/ F
indexes.html
- [3 p3 `3 X1 P. Z9 i4 \索引可用于有效地查找与查询中某一列匹配的所有行,然后仅遍历表的该子集以查找完全匹配。如果WHERE子句中任何列上都没有索引,则SQL服务器必须遍历4 ~! I: G: G1 R0 p5 x' E2 M! g
整个表 并检查每一行是否匹配,这在大表上可能是一个缓慢的操作。" L- f8 P% I* g3 ?; r, t
索引也可以是UNIQUE索引,这意味着在该列中不能有重复的值,或者PRIMARY KEY在某些存储引擎中定义值在数据库文件中存储位置的值。
0 U) V- N; r' p) X, l1 w在MySQL中,您可以EXPLAIN在SELECT语句前面使用来查看查询是否将使用任何索引。这是解决性能问题的一个很好的开始。在此处阅读更多信息:http
/ i7 b, V/ {2 i# ]6 i/ d  U:" ]4 E! u. v/ M1 h
//dev.mysql.com/doc/refman/5.0/en/explain.html
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则