MYSQL index with text fileds -
i try build index article (own_a) table because can't use exist index.
the select contain 6 fileds article table, 3 integer, 1 varchar (30) , 2 text. if delete 2 text filed query, use index succesfully. how build index 2 large text filed? error: "specified key long; max key length 1000 bytes".
select own_a.id article_id, own_a.article_number, own_d.id dealer_id, own_d.name dealer, own_a.tecdoc_article_id, own_a.description, own_a.extra_description, 'art' type, al.genart_id, 1 own own_db.article own_a join own_db.dealer own_d on own_a.dealer_id = own_d.id join `common_db`.`article` on a.id = own_a.t_article_id join `common_db`.`article_linkage` al on al.article_id = a.id own_a.id not null , 1=1 , al.genart_id in (273,251,2462,3229,1334,1080,854,919,188,1632,1626,1213,12,3845,51,191,1547,653,2070,572,654,188,854) , ( 1=0 or a.dealer_id in (10,101,110,134,140,156,161,192,301,316,317,32,35,55,6,85,89,9,95) ) , al.type_type = 2 , al.type_id = 19799 group own_a.id order own_a.id
explain select...:
id select_type table type possible_keys key key_len ref rows 1 simple own_a primary,article_number,id,idx_id_an,idx_id_did,idx... null null null 20088 using where; using temporary; using filesort 1 simple al ref artid artid 17 commondb.own_a.t_article_id,const,con... 2 using 1 simple own_d eq_ref primary primary 8 own_db.own_a.dealer_id 1 simple eq_ref primary,dealer_id,dealer_id_index primary 8 own_db.own_a.t_article_id 1 using
use index (..) didn't work.
thx help
Comments
Post a Comment