Проблем с търсенето
3 отговора
205 прегледа
Проблем с търсенето
Здравейте!
По-надолу имаше тема за подобен проблем, на моя но не точно същия.
Имам елементарна заявка към една таблица (InnoDB) - търся в едно поле тип TEXT.
Когато полето е тип TEXT търсенето е много бавно 4,45 sсек. Ако го направя VARCHAR търсенето става много бързо 0,23 сек.
На какво може да се дълйи това и какво мога да направя- защото VARCHAR типа не е достатъчен за повечето от данните в това поле, а с TEXT е прекалено бавно
Заявката е от типа
select field,.. from table where text_field like '%word%'
По-надолу имаше тема за подобен проблем, на моя но не точно същия.
Имам елементарна заявка към една таблица (InnoDB) - търся в едно поле тип TEXT.
Когато полето е тип TEXT търсенето е много бавно 4,45 sсек. Ако го направя VARCHAR търсенето става много бързо 0,23 сек.
На какво може да се дълйи това и какво мога да направя- защото VARCHAR типа не е достатъчен за повечето от данните в това поле, а с TEXT е прекалено бавно
Заявката е от типа
select field,.. from table where text_field like '%word%'
Re: Проблем с търсенето
CREATE INDEX "MY_TEXTINDEX" ON "TABLE"("TEXT_FIELD");
Цената е увеличаване на времето за INSERT,EDIT & DELETE.
Цената е увеличаване на времето за INSERT,EDIT & DELETE.
няма смисъл
За заявки от типа LIKE '%word%' индексът няма да бъде използван така или иначе.
Everything louder than everything else...
Everything louder than everything else...
Re: Проблем с търсенето
То търсенето може да стане с MATCH AGAINST , но InnoDB таблиците не поддържат пълнотекстови индекси