如 SELECT * FROM table WHERE key1 = A, key2 = B order by key3 ASC, key4 ASC这样组合索引的设计就是 (key1, key2, key3, key4), 而不是 (key1, key2)
ccstart,cctime,id我想这个索引中的id应该是无效的。
如 SELECT * FROM table WHERE key1 = A, key2 = B order by key3 ASC, key4 ASC这样组合索引的设计就是 (key1, key2, key3, key4), 而不是 (key1, key2) 这个可以理解。但如果改为如 SELECT * FROM table WHERE key1 = A, key2 > B order by key3 ASC, key4 ASC这时我就无法理解key3和key4如何工作了。你能解释一下这时的索引实际的结构吗?这种类型的索引工作原理我一直挺胡涂的。
ccstart, cctime
id做为主键可以不用加入多列索引
事实上你的SQL语句并没有使用主键做为条件,何来同时使用?
这个可以理解。但如果改为如 SELECT * FROM table WHERE key1 = A, key2 > B order by key3 ASC, key4 ASC这时我就无法理解key3和key4如何工作了。你能解释一下这时的索引实际的结构吗?这种类型的索引工作原理我一直挺胡涂的。
2 增加内存
3 增加临时表大小
4 缓存之类的自己调调看
5 百万级数据库对于mysql来说根本不是问题,但也快到极限了最后 索引的问题可以在一台没设缓存的机器上慢慢调试,多读mysql索引部分的文档
over