IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

requete multi critère


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Par défaut requete multi critère
    bonjour,

    je voudrais ecrire une requete multi-critère qui contient plusieurs AND et OR en plus des parametres qui peuvent etre une sous chaine (utilisation de LIKE)

    voila le problème
    je voudrais que qd je rempli pas un champ qu'il ne soit pas pris en charge par la requete

    merci d'avance
    bien cordialement

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 135
    Par défaut
    Donne-nous un exemple de ta requête.
    Nous pourrons t'aider à la corriger.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre éclairé Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Par défaut
    Citation Envoyé par al1_24 Voir le message
    Donne-nous un exemple de ta requête.
    Nous pourrons t'aider à la corriger.
    ok voila :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    SELECT postuler.id_annonce, postuler.id_candidat, postuler.etat, candidat.nom, candidat.prenom, experience.secteur,  experience.entreprise, experience.description, experience.intitule, formation_condidat.intitule_diplome 
     
    FROM Annonce, experience, candidat, formation_condidat, postuler
     
    WHERE Annonce.id_annonce = postuler.id_annonce 
    and     postuler.id_candidat = candidat.id_candidat 
    and     candidat.id_candidat = experience.id_candidat 
    and     candidat.id_candidat = formation_condidat.id_candidat 
    and     Annonce.ref = @ref
    AND    experience.secteur LIKE '%' + @secteur + '%'  
    and    formation_condidat.intitule_diplome LIKE '%' + @diplome + '%' 
    and    ( experience.entreprise LIKE '%' + @entreprise + '%' 
             or experience.description LIKE '%' + @description + '%' 
             or experience.intitule LIKE '%' + @intitule + '%' )
    le pb survient qd je laisse des champs vide dans mon formulaire
    est ce que ca peut se traité au niveau de SQL ?

    PS : je travail avec SQL Server 2005

    merci

  4. #4
    Membre chevronné Avatar de chrifo
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    444
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 444
    Par défaut
    Bonjour,

    Avec des sous-requêtes et des jointures externes.

    Requete non testée, mais qui doit constituer une bonne base de travail :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    SELECT postuler.id_annonce, postuler.id_candidat, postuler.etat, candidat.nom, candidat.prenom, experience.secteur,  experience.entreprise, experience.description, experience.intitule, formation_condidat.intitule_diplome 
    FROM Annonce
         INNER JOIN postuler ON Annonce.id_annonce = postuler.id_annonce 
    	 INNER JOIN candidat ON postuler.id_candidat = candidat.id_candidat 
    	 LEFT OUTER JOIN 
    	     (SELECT * FROM formation_candidat WHERE intitule_diplome LIKE '%' + @diplome + '%') AS formation_candidat 
    		   ON candidat.id_candidat = formation_candidat.id_candidat 
    	 LEFT OUTER JOIN 
    	     (SELECT * FROM experience WHERE secteur LIKE '%' + @secteur + '%' 
    		                             AND ( entreprise LIKE '%' + @entreprise + '%' OR description LIKE '%' + @description + '%' OR intitule LIKE '%' + @intitule + '%' ) AS experience 
             ON candidat.id_candidat = experience.id_candidat
    WHERE Annonce.REF = @REF

  5. #5
    Membre éclairé Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Par défaut
    salam,

    merci chrifo pour ton aide
    mais le gros problème c'est au niveau des "like "
    quand il recoit like='%%' , il ne le traite pas
    mais grace a dieu j'ai trouvé une solution pour constituer ma requete selon le contenu des champ qui contiennent les critères de recherche

    voila, merci beaucoup encore une fois

    bien cordialement
    Mohammed Reda

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requete multi-critères filtrage
    Par Christophe dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 07/06/2013, 21h00
  2. [AC-2003] Erreur 3075 : requete multi critère
    Par b.billet85 dans le forum VBA Access
    Réponses: 3
    Dernier message: 04/11/2010, 16h44
  3. Requete Multi critères avec Date
    Par Myogtha dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 16/12/2008, 20h58
  4. Réponses: 6
    Dernier message: 28/06/2006, 15h01
  5. Requete multi-critères
    Par anutka dans le forum Requêtes
    Réponses: 1
    Dernier message: 21/09/2005, 13h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo