Forums Développement Multimédia

Aller au contenu

Recherche en fulltext

CODE PHP MySQL

2 réponses à ce sujet

#1 binjivb

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 122 messages

Posté 13 December 2007 - 11:07 AM

Bonjour,

Je fais une recherche en fulltext. Déjà j'aimerais être sur que cette méthode utilise moins de ressource que le classique "LIKE".

D'autre part, j'effectue ma recherche sur sur deux colonnes d'une seule table. Voici ma requête :
SELECT DISTINCT nom,lien,pays,continent, 
MATCH(nom,texte) AGAINST ('$recherche' IN BOOLEAN MODE) AS pertinence 
FROM texte_lieu 
WHERE MATCH(nom,texte) AGAINST ('$recherche' IN BOOLEAN MODE) 
ORDER BY pertinence DESC
Ma recherche s'effectue donc dans les colonnes "nom" et "texte". Et j'aimerais avoir en premier ce qu'il trouve dans la colonne nom. En fait que ce qu'il trouve dans la colonne "nom" soit beaucoup plus important que ce qu'il trouve dans la colonne "texte".

Merci par avance.

#2 zebden

  • Honoris
  • PipPipPipPipPipPipPipPip
  • 1395 messages

Posté 14 December 2007 - 20:07 PM

Lu,

Maybe :

SELECT DISTINCT nom,lien,pays,continent,
MATCH(nom) AGAINST ('$recherche' IN BOOLEAN MODE) AS pertinence_text,
MATCH(texte) AGAINST ('$recherche' IN BOOLEAN MODE) AS pertinence_nom
FROM texte_lieu
WHERE MATCH(nom,texte) AGAINST ('$recherche' IN BOOLEAN MODE)
ORDER BY pertinence_text DESC, pertinence_nom DESC

#3 binjivb

    Ceinture Marron

  • Members
  • PipPipPipPipPipPip
  • 122 messages

Posté 09 January 2008 - 18:25 PM

Salut,
Je m'y prend un peu tard, ce n'est pas très poli, mais j'étais passé sur autre chose.
Donc merci beaucoup zebden, ça fonctionne beaucoup mieux comme ça, je ne savais pas qu'on pouvais ainsi doubler les MATCH..

Bonne soirée.



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP