Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
909 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Requete LIKE sur plusieurs champ == Filtre

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Requete LIKE sur plusieurs champ == Filtre

n°1742353
ozf
Posté le 06-06-2008 à 09:48:45  profilanswer
 

Bonjour, j'aimerais mettre en place un filtre pour ma liste téléphonique de mon entreprise, je voudrais que le filtre agit sur le nom et le prénom avec en plus la gestion d'un espace! je vous montre le code que je pensais bon:
 

Spoiler :

SELECT CodeMembre,NomMembre, PrenomMembre, NumPosteInt, RaccourciPort, NomServ, Mail FROM Tel_Membre, Tel_Service WHERE Tel_Membre.CodeServ=Tel_Service.CodeServ AND NomMembre," ",PrenomMembre LIKE '%$Filtre%' ORDER BY NomMembre;


 
Voila en faite si la personne entre dans le filtre "f d" je veux que le filtre cherche un "f" dans NomMembre et un "d" dans PrenomMembre!
Ou alors si la personne entre "fran" je veux que ca cherche "fran"soit dans NomMembre ou PrenomMembre, faut pas que ca soit forcément dans les deux champs obligatoirement!
 
Merci.

mood
Publicité
Posté le 06-06-2008 à 09:48:45  profilanswer
 

n°1742939
couak
Posté le 07-06-2008 à 19:32:09  profilanswer
 

à mon avis en SQL pur tu vas galérer, le mieux est d'utiliser le langage qui requête la base pour construire dynamiquement la requête SQL à passer
Je suppose que c'est du PHP+MySQL (quand aucune info est donnée ya 99% de chances que ca soit car les gens pensent toujours que tout le monde fait du PHP+MySQL)
en PHP ca  
pourrait te donner un truc comme ca :

Code :
  1. $query = "SELECT CodeMembre,NomMembre, PrenomMembre, NumPosteInt, RaccourciPort, NomServ, Mail FROM Tel_Membre, Tel_Service WHERE Tel_Membre.CodeServ=Tel_Service.CodeServ ";
  2. if (ereg(" ", $Filtre))
  3. {
  4.   list($nom, $prenom) = split(" ", $Filtre);
  5.   $query .= "AND NomMembre like '%$nom%' AND PrenomMembre like '%$prenom%'";
  6. }
  7. else
  8. {
  9.   $query .= "AND (NomMembre like '%$Filtre%' OR PrenomMembre like '%$Filtre%'";
  10. }


Attention j'ai pondu un truc sans vérifier, et qui n'est sûrement pas suffisamment robuste à tous les cas (genre le cas où il y a plus espaces dans le champs de saisie)
}


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Requete LIKE sur plusieurs champ == Filtre

 

Sujets relatifs
aide pour une requête[SQL]Problème requête simple: jointure externe
combiner plusieurs variables en une seule?access requête sur liste déroulante avec dates
utilisation de requete sur un formulaireun champ qui en reseingne d'autre sur access 2007
je n'arrive pas a faire un requete sql, svpfaire un total de plusieurs feuilles excel
Requete sur plusieur baserecuperer resultset d'une requete servlet dans une page jsp
Plus de sujets relatifs à : Requete LIKE sur plusieurs champ == Filtre


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR