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

Requêtes et SQL. Discussion :

Requête avec plusieurs conditions


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 55
    Points : 28
    Points
    28
    Par défaut Requête avec plusieurs conditions
    Bonjour, et merci d'avance pour votre aide

    J'ai fais une requête avec plusieurs conditions mais elle ne fonctionne pas et je ne comprends vraiment pas pourquoi :/

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Feuil1.NUM, Feuil1.NOM, Feuil1.Prénom, Feuil1.ADRESSE, Feuil1.CP, Feuil1.VILLE, Feuil1.Mail, DEVIS.SOURCE, DEVIS.[INDICE DE CONFIANCE], DEVIS.[INDICE DE PRIORITE], DEVIS.[DEVIS A FAIRE], DEVIS.[DEVIS FAIT LE], DEVIS.[DEVIS REMIS LE], IMPLANTATION.[Plan a faire], IMPLANTATION.[Plan fait le], MODIFICATIONS.[MODIFS A FAIRE POUR LE], MODIFICATIONS.PLAN, MODIFICATIONS.DEVIS, MODIFICATIONS.[MODIFS FAITE LE], MODIFICATIONS.[MODIFS REMISENT LE], RENDEZVOUS.[RDV A PRENDRE], RENDEZVOUS.[RDV 2], RENDEZVOUS.[OBJET RDV 2], RENDEZVOUS.[RDV 3], RENDEZVOUS.[OBJET RDV 3], RENDEZVOUS.[RDV 4], RENDEZVOUS.[OBJET RDV 4], RELANCES.[A RELANCER], RELANCES.[RELANCE 1 FAITE LE], RELANCES.[REPONSE 1], RELANCES.[RELANCE 2 FAITE LE], RELANCES.[REPONSE 2], RELANCES.[RELANCE 3 FAITE LE], RELANCES.[REPONSE 3], DEVIS.Commentaires, Feuil1.[DATE POSE PREVUE], Feuil1.[date signature]
    FROM ((((Feuil1 INNER JOIN DEVIS ON Feuil1.NUM = DEVIS.NUM) INNER JOIN IMPLANTATION ON Feuil1.NUM = IMPLANTATION.NUM) INNER JOIN MODIFICATIONS ON Feuil1.NUM = MODIFICATIONS.NUM) INNER JOIN RENDEZVOUS ON Feuil1.NUM = RENDEZVOUS.NUM) INNER JOIN RELANCES ON Feuil1.NUM = RELANCES.NUM
    WHERE (((Feuil1.[date signature]) Is Null)) AND ((Not (RELANCES.[REPONSE 1])="PROJET ABANDONNE")) AND ((Not (RELANCES.[REPONSE 2])="PROJET ABANDONNE")) AND ((Not (RELANCES.[REPONSE 3])="PROJET ABANDONNE"))
    ORDER BY Feuil1.NOM;

    Comme résultat, j'attends d'avoir tous mes prospects qui sont ni des projets abandonnés, ni qu'il est leur devis signé. Je pense que c'est vers la fin que ça ne fonctionne pas.

    Merci d'avance pour votre aide

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 612
    Points : 56 717
    Points
    56 717
    Billets dans le blog
    40
    Par défaut
    Bonsoir,

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    WHERE  (( ( Feuil1.[date signature] ) IS NULL ))
           AND (( NOT ( RELANCES.[REPONSE 1] ) = "PROJET ABANDONNE" ))
           AND (( NOT ( RELANCES.[REPONSE 2] ) = "PROJET ABANDONNE" ))
           AND (( NOT ( RELANCES.[REPONSE 3] ) = "PROJET ABANDONNE" ))
    ORDER  BY Feuil1.NOM;

    Je me demande si ce ne sont pas des Null qui trainent dans tes "REPONSE" et qui fichent la pagaille.

    ça donne quoi si tu remplaces RELANCES.[REPONSE x] par nz(RELANCES.[REPONSE x],"") ?

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 55
    Points : 28
    Points
    28
    Par défaut
    Bonjour,

    Alors j'ai changé ma table sous l'ordre de mon patron mais toujours le même problème qui se fais, ma table n'affiche rien.

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    SELECT Feuil1.NOM,
           Feuil1.Prénom,
           Feuil1.Mail,
           DEVIS.[INDICE DE CONFIANCE],
           DEVIS.[INDICE DE PRIORITE],
           DEVIS.[DEVIS REMIS LE],
           IMPLANTATION.[Plan fait le],
           MODIFICATIONS.[MODIFS REMISENT LE],
           MODIFICATIONS.PLAN,
           MODIFICATIONS.DEVIS,
           RELANCES.[A RELANCER],
           RELANCES.[TYPE DE RELANCE],
           RELANCES.DATE_RELANCES,
           RELANCES.REPONSE,
           DEVIS.Commentaires,
           DEVIS.[PROJET ABANDONNE],
           Feuil1.[date signature]
    FROM (((DEVIS
            INNER JOIN Feuil1 ON DEVIS.NUM = Feuil1.NUM)
           INNER JOIN IMPLANTATION ON Feuil1.NUM = IMPLANTATION.NUM)
          INNER JOIN MODIFICATIONS ON Feuil1.NUM = MODIFICATIONS.NUM)
    INNER JOIN RELANCES ON Feuil1.NUM = RELANCES.NUM
    WHERE (((DEVIS.[DEVIS REMIS LE]) IS NOT NULL)
           AND ((RELANCES.[A RELANCER])=TRUE)
           AND ((RELANCES.REPONSE)<>"PROJET ABANDONNE")
           AND ((DEVIS.[PROJET ABANDONNE])=FALSE)
           AND ((Feuil1.[date signature]) IS NULL))
      OR (((IMPLANTATION.[Plan fait le]) IS NOT NULL)
          AND ((RELANCES.[A RELANCER])=TRUE)
          AND ((RELANCES.REPONSE)<>"PROJET ABANDONNE")
          AND ((DEVIS.[PROJET ABANDONNE])=FALSE)
          AND ((Feuil1.[date signature]) IS NULL))
      OR (((MODIFICATIONS.[MODIFS REMISENT LE]) IS NOT NULL)
          AND ((RELANCES.[A RELANCER])=TRUE)
          AND ((RELANCES.REPONSE)<>"PROJET ABANDONNE")
          AND ((DEVIS.[PROJET ABANDONNE])=FALSE)
          AND ((Feuil1.[date signature]) IS NULL));

  4. #4
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 612
    Points : 56 717
    Points
    56 717
    Billets dans le blog
    40
    Par défaut
    J'ai fait une petite expérience avec une table (id, texte1, texte2) avec les lignes :

    texte1 texte2
    A B
    A A
    B

    puis une requête :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT texte1, texte2, IIf([texte1]<>[texte2],"texte1<>texte2","texte1=texte2") AS difference
    FROM Latable;

    qui retourne :

    texte1 texte2 difference
    A B texte1<>texte2
    A A texte1=texte2
    B texte1=texte2
    Le résultat de la troisième ligne à cause du champ texte1 qui est Null a de quoi surprendre, non ?

    Je me demandais donc si tu n'avais pas des Null dans ton champ texte [REPONSE].

    Si j'utilise la fonction Nz pour remplacer les Null par des chaînes vides (=""), il n'y a plus de problème :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT texte1, texte2, IIf(nz([texte1],"")<>nz([texte2],""), "texte1<>texte2", "texte1=texte2") AS difference
    FROM Latable;

    texte1 texte2 difference
    A B texte1<>texte2
    A A texte1=texte2
    B texte1<>texte2

Discussions similaires

  1. Requête sql avec plusieurs conditions
    Par scorpion75 dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/06/2013, 00h28
  2. Requête jointe avec plusieurs conditions
    Par bugbug73 dans le forum Requêtes
    Réponses: 6
    Dernier message: 13/03/2013, 17h03
  3. [AC-2003] Requête avec plusieurs conditions
    Par Brut4lity dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 09/09/2011, 14h09
  4. Réponses: 10
    Dernier message: 26/03/2008, 15h00
  5. [SQL] Requête sur un champ mais avec plusieurs conditions
    Par lowkey dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/02/2008, 12h26

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