Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème index fulltext sur MySql

7 réponses
Avatar
Stéfen
Bonjour,

Je rencontre un probl=E8me avec le sindex fulltext sur Mysql, j'ai cr=E9=E9
un index de ce type sur 3 champs de ma table. Celle-ci contient des
donn=E9es avec les mots cl=E9s que je test. Mais aucune r=E9ponse.

Avez-vous une id=E9e, voici ma requ=EAte :
Select ct.ct_titre as titre
, left(ct.ct_resume,180) as resume
, MATCH (ct.ct_titre, ct.ct_resume, ct.ct_corps) AGAINST ('article')
as score
From vc_content ct
Where MATCH (ct.ct_titre, ct.ct_resume, ct.ct_corps) AGAINST
('article')
And ct.ct_langue=3D'FR'
And ct.ct_live =3D 'O' Order By score

Merci =E0 tous pour l'aide

7 réponses

Avatar
Jerome PAULIN
Stéfen a écrit :
Bonjour,

Je rencontre un problème avec le sindex fulltext sur Mysql, j'ai créé
un index de ce type sur 3 champs de ma table. Celle-ci contient des
données avec les mots clés que je test. Mais aucune réponse.




Ta table est bien en MyISAM ? (le full text ne fonctionne pas sur les
tables innoDB)

gg
Avatar
Stéfen
On 7 mai, 08:54, Jerome PAULIN
wrote:
Stéfen a écrit :

> Bonjour,

> Je rencontre un problème avec le sindex fulltext sur Mysql, j'ai cré é
> un index de ce type sur 3 champs de ma table. Celle-ci contient des
> données avec les mots clés que je test. Mais aucune réponse.

Ta table est bien en MyISAM ? (le full text ne fonctionne pas sur les
tables innoDB)

gg



Oui ma table est au format MyISAM...

Stéfen
www.splashcommerce.com
Avatar
comico
Bonjour

Si le mot cherché est présent dans la moitié des lignes ou plus c'est le
comportement attendu.
http://dev.mysql.com/doc/refman/5.0/fr/fulltext-search.html
Il faut utiliser dans ce cas l'option IN BOOLEAN MODE qui n'utilise pas le
seuil des 50%
Avatar
P'tit Marcel
comico a écrit :
Si le mot cherché est présent dans la moitié des lignes ou plus c'est le
comportement attendu.



par ailleurs, seuls les mots de 4 caractères ou plus sont indexés.

enfin, cela ne coute rien de reconstruire les index au cas où :
REPAIR TABLE nomtable QUICK;


--
P'tit Marcel
stats sur les forums modérés http://www.centrale-lyon.org/ng/
Avatar
Stéfen
On 8 mai, 18:23, P'tit Marcel
wrote:
comico a écrit :

> Si le mot cherché est présent dans la moitié des lignes ou plus c' est le
> comportement attendu.

par ailleurs, seuls les mots de 4 caractères ou plus sont indexés.

enfin, cela ne coute rien de reconstruire les index au cas où :
REPAIR TABLE nomtable QUICK;

--
P'tit Marcel
stats sur les forums modéréshttp://www.centrale-lyon.org/ng/



Bon et bien j'ai fais toutes le manip, repair, ajout de la clause IN
BOOLEAN MODE et la requête me renvoie toujours rien... Je recherche le
mot fonction qui est bien présent dans les contenus de ma table.

Stéfen
www.splashcommerce.com
Avatar
Côme de Christen
"Stéfen" a écrit dans le message de news:

Bon et bien j'ai fais toutes le manip, repair, ajout de la clause IN
BOOLEAN MODE et la requête me renvoie toujours rien... Je recherche le
mot fonction qui est bien présent dans les contenus de ma table.



Salut

MATCH cherche le mot exact si le mot existe mais au pluriel cela ne correspond
pas par exemple.
Tu dois utiliser des jokers pour obtenir une recherche plus souple.
Essaie également en virant tous tes autres critères pour ne tester que le MATCH
déjà.
Avatar
Stéfen
On 9 mai, 21:14, "Côme de Christen"
wrote:
"Stéfen" a écrit dans le message de news:


>Bon et bien j'ai fais toutes le manip, repair, ajout de la clause IN
>BOOLEAN MODE et la requête me renvoie toujours rien... Je recherche le
>mot fonction qui est bien présent dans les contenus de ma table.

Salut

MATCH cherche le mot exact si le mot existe mais au pluriel cela ne corres pond
pas par exemple.
Tu dois utiliser des jokers pour obtenir une recherche plus souple.
Essaie également en virant tous tes autres critères pour ne tester que le MATCH
déjà.



Ca y est j'ai résolu le problème, j'ai reconstruis l'index et j'avais
aussi une petite erreur dans mon code.
Merci à tous pour l'aide.
Stéfen
www.splashcommerce.com