N??j??j{z恨w???oz?? ???篆??i, all I have a mysql server (dual P4 2.0G, 1G MEM, RH8.0, Mysql 4.0.12), There are 2 tables defined as follow:
create table a ( imgid int not null, parent int, imgtype char(3), img longtext, primary key (imgid), key (parent, imgid) ) type = innodb; contains about 11000 rows, about 800M in size; create table b ( docid char(2) not null, dockey varchar(60) not null, owner varchar(8), data longtext, primary key (docid, dockey) key ind_docid (docid), key ind_dockey (dockey) ) type = innodb; contains 30000+ rows, about 2.8G in size. SQL tested: A1) select imgid, parent from a where parent = 10; returns 3357 rows in 0.08 sec. A2) select imgid, parent, imgtype from a where parent = 10; return 3357 rows in 8.32 sec.!!! A3) select imgid, parent from a where parent = 10 order by imgid; returns 3357 rows in 0.1 sec A4) select imgid, parent, imgtype from a where parent = 10 order by imgid; returns 3357 rows in 25.88 sec!!! A5) create table za select imgid, parent, imgtype from a; 10102 rows in 1.71 sec. A6) select imgid, parent, imgtype from za where parent = 10 order by imgid; 3357 rows in 0.02 sec. B1) select docid, dockey from b where dockey = 'MR'; 27786 rows in 0.15sec; B2) select docid, dockey, owner from b where dockey='MR'; 27786 rows in 0.16sec; B3) select distinct docid from b where dockey = 'MR'; 3426 rows in 85.47sec; B4) create table zb select docid, dockey from b; 30924 rows in 2.2 sec; B5) select distinct docid from zb where dockey = 'MR'; 3426 rows in 0.24 sec. Can anybody answer following questions, reguarding the listed test results: Q-1. What cause the performance downgrade by adding single imgtype field to select? (A1 vs A2, A3 vs A4) Q-2. Why no noticable performace downgrade on similar selects on table B? (B1 vs B2)? Q-3. How to explain the performance differences,just because single BLOB field?(A4 vs A6, and B3 vs B5)? comment: Tests also performed after I change the table type to mysql native for both table a and b, the result is similar. Thanks you for your attention. Oscar Yen.