Match () AGAINST () et MySQL

comparef
WRInaute impliqué
WRInaute impliqué
 
Messages: 504
Inscription: 5 Avr 2005

Match () AGAINST () et MySQL

Message le Sam Sep 10, 2005 21:50

Bonjour a tous,

Dans la requete suivante :
Code: Tout sélectionner
$sql = "SELECT topic_id
FROM ". TOPICS_TABLE ."
WHERE topic_id != $topic_id
AND MATCH (topic_title) AGAINST ('". addslashes($topic_title) ."')
ORDER BY topic_time DESC LIMIT 0,9";


Je ne comprend pas bien ce que représente le 0,9.
Est-ce en rapport avec le degré de similitude topic_title et $topic_title ?

Merci pour vos reponses,

Robin

dh
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 400
Inscription: 1 Sep 2003

Message le Sam Sep 10, 2005 22:17

les 9 prems resultats de ta base

dh


MarvinLeRouge
WRInaute impliqué
WRInaute impliqué
 
Messages: 525
Inscription: 1 Sep 2004

Message le Sam Sep 10, 2005 22:22

[EDIT]Arf : grillé sur le fil[/EDIT]
Absolument pas : c'est en rapport avec LIMIT.
Doc MySql : instruction select
Extraint :
La clause LIMIT peut être utilisée pour limiter le nombre d'enregistrements retournés par la commande SELECT. LIMIT accepte un ou deux arguments numériques. Ces arguments doivent être des entiers constants.

Avec un argument, la valeur spécifie le nombre de lignes à retourner depuis le début du jeu de résultat. Si deux arguments sont donnés, le premier indique le décalage du premier enregistrement à retourner, le second donne le nombre maximum d'enregistrement à retourner. Le décalage du premier enregistrement est 0 (pas 1)

jeroen
WRInaute passionné
WRInaute passionné
 
Messages: 2455
Inscription: 30 Aoû 2002

Re: Match () AGAINST () et MySQL

Message le Sam Sep 10, 2005 22:25

comparef a écrit:Est-ce en rapport avec le degré de similitude topic_title et $topic_title ?


pour limiter les réponses à une certaine similarité tu peux faire
Code: Tout sélectionner
... AND MATCH (topic_title) AGAINST ('". addslashes($topic_title) ."') > 5 ....

comparef
WRInaute impliqué
WRInaute impliqué
 
Messages: 504
Inscription: 5 Avr 2005

Message le Dim Sep 11, 2005 7:36

Merci pur vos reponses, effectivement je n'y était pas du tout !

Code: Tout sélectionner
... AND MATCH (topic_title) AGAINST ('". addslashes($topic_title) ."') > 5 ....


Ce 5, c'est sure une échelle de 0 à 10 , plus c'est élevé et plus ca filtre ?

jeroen
WRInaute passionné
WRInaute passionné
 
Messages: 2455
Inscription: 30 Aoû 2002

Message le Dim Sep 11, 2005 8:17

c'est sur une échelle ouverte (je connais pas la limite sup, mais c'est > 10) et effectivement plus c'est grand, plus c'est similaire...
selon mes tests, 5 est une bonne valeur

tu peux faire
Code: Tout sélectionner
SELECT  MATCH (topic_title) AGAINST ('". addslashes($topic_title) ."') as indice_similarite ...


pour afficher l'indice :wink:

comparef
WRInaute impliqué
WRInaute impliqué
 
Messages: 504
Inscription: 5 Avr 2005

Message le Dim Sep 11, 2005 8:19

ok, merci pour ton aide,
A++

Robin


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités