yep Posté 26 Novembre 2006 Posté 26 Novembre 2006 (modifié) Bonjour pour pouvoir détecter la présence d'un mot clé dans un champ d'une base, il est possible d'écrire une requête du type : SELECTMATCH('nom_colonne') AGAINST ('mot_cle') AS 'valeur'FROM nom_tableWHEREMATCH('nom_colonne') AGAINST ('mot_cle') (plus d'infos : -http://omiossec.developpez.com/mysql/fulltext/etudes/) Cette requête s'effectue sur une colonne; est-il possible de le faire sur plusieurs colonnes (3 par exemple) en y intégrant des pondérations ? soit une requête pouvant ressembler à ça (sans les pondérations) : SELECTMATCH('nom_colonne') AGAINST ('mot_cle') AS 'valeur',MATCH('nom_colonne2') AGAINST ('mot_cle') AS 'valeur2',MATCH('nom_colonne3') AGAINST ('mot_cle') AS 'valeur3'FROM nom_tableWHERE MATCH('nom_colonne') AGAINST ('mot_cle') Avec cette requête, aucune pondération n'est de mise. On peut créer la pondération avec du PHP, mais est-il possible de le faire en SQL ? Modifié 26 Novembre 2006 par yep
snoozer Posté 18 Janvier 2008 Posté 18 Janvier 2008 Si tu veut faire un match sur plusieurs colonnes tu peut le faire comme ca : WHERE MATCH (colonne1, colonne2, colonne3) AGAINST ('chainerechercher') mais a premiere vu pas de ponderation possible dans le SQL.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant