[MYSQL] recherche avec LIKE et tri selon la pertinance

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [MYSQL] recherche avec LIKE et tri selon la pertinance

Re: [MYSQL] recherche avec LIKE et tri selon la pertinance

par Tong » 24 juin 2011, 18:25

Okey, ca marche bien avec match against, merci.

Re: [MYSQL] recherche avec LIKE et tri selon la pertinance

par Tong » 24 juin 2011, 14:01

Oui mais séparer les requêtes n'est pas compatible avec la façon dont sont générés les listings de produits sur ma boutique. Ils ne peuvent être générés qu' à partir d'une seule requête.

Pour match against, beh je vais lire ça.

Re: [MYSQL] recherche avec LIKE et tri selon la pertinance

par Berzemus » 24 juin 2011, 13:06

Like est a MySQL ce que <blink> est au Html.

Une "vraie" recherche s'utilise avec match() against().
Et il est facile d'obtenir un score de pertinence.

Sinon il devrait être possible de résoudre ton problème du côté Php, en séparant les requêtes.

[MYSQL] recherche avec LIKE et tri selon la pertinance

par Tong » 24 juin 2011, 12:16

Hello,

J'ai une recherche à faire dans une base de donnée de produits, et je la fait bêtement en utilisant LIKE, sur le nom du produit et sur sa description.
"select * from table_products where products_name like '%".$keyword."%' or products_description like '%".$keyword."%'"
Maintenant, j'aimerais que les résultats pour lequels le mot clé apparait dans le nom du produit apparaissent avant ceux pour lesquels il n'apparait que dans la description.
Es-ce possible sans avoir une requête trop gourmande au final ?

Merci !