Précédent   Forum des professionnels en informatique > Bases de données > MySQL
MySQL Forum d'entraide MySQL. Avant de poster -> FAQ MySQL, Tutoriels MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 07/02/2010, 17h11   #1
Invité de passage
 
Date d'inscription: février 2010
Messages: 7
Par défaut Optimiser les résultats d'une recherche avec MySQL

bonjour,
Je voudrais optimiser les résultats d'une recherche avec MySql.
j'ai une table avec les nom des produits
exemple : products_name : 1- Pc Portable 19V
2- Portable PC 19V
3-Adaptateur secteur non regule CA 9V
lorsque je fais:
Code :
SELECT * FROM TABLE WHERE products_name LIKE "%9v%"  ou bien LIKE "%19v%"
il affiche tous le produits qui contient meme 19v or je veux juste les produits avec 9v et dans le deuxieme cas il m'affiche les produits avec 9v.
merci pour votre aide d'avance
E_HUGO est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 08/02/2010, 00h51   #2
Nouveau membre du Club
 
Date d'inscription: octobre 2007
Localisation: Essonne
Messages: 76
Par défaut

Bonsoir

Pour les 9v seuls
Code :
SELECT * FROM TABLE WHERE products_name LIKE "% 9v%"
Pour les 19v seuls
Code :
SELECT * FROM TABLE WHERE products_name LIKE "% 19v%"
comico est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 08/02/2010, 09h38   #3
Invité de passage
 
Date d'inscription: février 2010
Messages: 7
Par défaut

Citation:
Envoyé par comico Voir le message
Bonsoir

Pour les 9v seuls
Code :
SELECT * FROM TABLE WHERE products_name LIKE "% 9v%"
Pour les 19v seuls
Code :
SELECT * FROM TABLE WHERE products_name LIKE "% 19v%"
Bonjour,
Oui dans ce ca je peux utiliser les espace mais supposons que le client saisi le premier mot du nom de produit hors y a aucun nom_produit qui commence avec un espace
E_HUGO est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 09/02/2010, 00h17   #4
Nouveau membre du Club
 
Date d'inscription: octobre 2007
Localisation: Essonne
Messages: 76
Par défaut

Bon bon tu peux aussi obtenir les 9V seuls avec :

Code :
SELECT * FROM TABLE WHERE products_name LIKE "%9v%" AND products_name NOT LIKE "%19v%"


Une autre piste à creuser c'est d'utiliser l'indexation full text (en myIsam) qui offre encore d'autre possibilités de recherche plus poussées avec des syntaxes genre MATCH AGAINST etc... J'ai plus tout le détail en tête, consulte l'aide la dessus.

Mais bon sortie de là si tu veux plus de précisions il va falloir organiser la base de données pour avec des champs adaptés !
comico est déconnecté   Envoyer un message privé Réponse avec citation
NEWS MYSQLF.A.Q MYSQLSOURCES MYSQLTUTORIELS MYSQLOUTILS MYSQLLIVRES MYSQL

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > Bases de données > MySQL



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 09h13.


Vos questions techniques : forum d'entraide MySQL - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.