【发布时间】:2014-04-29 19:13:32
【问题描述】:
我听说索引使搜索速度更快,但新人实际体验过这一点。我有一个在列上索引的表。现在应该如何运行查询,以便充分利用此索引并更快地获取查询?
我目前对索引表的查询:
String getFS = "select * from TABLEname where number="+MobNum;
没有特别的性能提升或任何东西。我是不是用错了索引??
这是我的表结构
CREATE TABLE `VPN_UserInformation` (
`id` varchar(20) CHARACTER SET utf8 NOT NULL,
`number` varchar(30) CHARACTER SET utf8 NOT NULL DEFAULT '000000000000000000000',
PRIMARY KEY (`id`),
KEY `number` (`number`),
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
【问题讨论】:
-
您的表中有多少行?你使用这个索引对你的表执行了多少查询?如果您测试的行数低于 10k,那么您根本看不到任何改进。
-
哦,我现在只有 10 行用于测试目的,但这个表在现场将有超过 100 万行。
-
将您的测试更改为至少有 10k 行,并比较有索引和没有索引。只有在那里你才能看到差异。
-
但现在也需要半秒钟才能获得该行。我不能提高这个性能吗??????只是雄心勃勃! :)
-
也将取决于基数。
标签: mysql performance indexing