新手提问,如何提高查询速度

james_yu 2006-09-13 07:10:51
第一次使用MYSQL(之前数据库也接触很少)。
有一个表,有1700多万条记录,
ADOQuery->SQL->Clear();
AnsiString str = "select * from snp126 where chrom ='" + sChrom + "';
ADOQuery->SQL->Add(str);
try
{
ADOQuery->Open();
}
catch(...)
{
查询得到90万,速度太慢了,等了10分钟以上。
请问我该怎么办?让速度快点
接触数据库少,麻烦高手们讲解详细点,谢谢了
表结构
drop table if exists snp126;
create table snp126
(
bin smallint(5) unsigned NOT NULL default 0,
chrom varchar(15) NOT NULL default '',
chromStart int(10) unsigned NOT NULL default 0,
chromEnd int(10) unsigned NOT NULL default 0,
name varchar(15) NOT NULL default '',
score smallint(5) NOT NULL default 0,
strand enum('?','+','-') NOT NULL default '?',
refNCBI blob NOT NULL,
refUCSC blob NOT NULL,
observed varchar(255) NOT NULL default '',
molType enum('unknown','genomic','cDNA') NOT NULL default 'unknown',
Class enum('unknown','single','in-del','het','microsatellite','named','no var','mixed','mnp','insertion','deletion') NOT NULL default 'unknown',
valid set('unknown','by-cluster','by-frequency','by-submitter','by-2hit-2allele','by-hapmap') NOT NULL default 'unknown',
avHet float NOT NULL default '0',
avHetSE float NOT NULL default '0',
func set('unknown','locus','coding','coding-synon','coding-nonsynon','untranslated','intron','splice-site','cds-reference') NOT NULL default 'unknown',
locType enum('unknown','range','exact','between','rangeInsertion','rangeSubstitution','rangeDeletion') NOT NULL default 'unknown',
weight int(10) unsigned NOT NULL default '0',
KEY name (name),
KEY chrom (chrom,bin)
) ;
...全文
173 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ttzhangzhiwei 2006-09-15
  • 打赏
  • 举报
回复
你加上索引应该回好一点

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧