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 :

Aide requête SQL


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Aide requête SQL
    Bonjour,

    J'ai un problème avec cette requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT BORDEREAU.L_LIBELLE, REF_D_DEVIS,COUNT(REF_D_DEVIS),AVG(MT_MO_ACHAT), AVG(MT_MO_VENTE),(AVG(MT_MO_VENTE) - AVG(MT_MO_ACHAT)) AS différence
    FROM BORDEREAU INNER JOIN D_DEVIS
    ON BORDEREAU.C_CODE=D_DEVIS.REF_D_DEVIS INNER JOIN DEVIS
    ON D_DEVIS.N_DEVIS=DEVIS.N_DEVIS INNER JOIN INTERVENTION
    ON DEVIS.N_INTER=INTERVENTION.N_INTER
    WHERE REF_D_DEVIS IS NOT NULL
    AND REF_D_DEVIS IN(SELECT C_CODE FROM BORDEREAU WHERE C_BORDEREAU='ASSURANCE' AND C_ETAT_SYNC='I')
    AND BORDEREAU.L_LIBELLE IN(SELECT DISTINCT(BORDEREAU.L_LIBELLE) FROM BORDEREAU WHERE C_CODE=REF_D_DEVIS)
    AND INTERVENTION.D_CLOTURE_REELLE IS NOT NULL
    GROUP BY REF_D_DEVIS, BORDEREAU.L_LIBELLE
    ORDER BY REF_D_DEVIS
    J'ai besoin de vérifier si il s’agit de devis clôturé.
    Et pour cela il faut que je passe par la colonne D_CLOTURE_REELE de la Table INTERVENTION.
    Donc je vérifie si il y à une date ou non pour savoir si il est clôturé.

    Sauf qu'avec mon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE D_CLOTURE_REELLE IS NOT NULL


    Qui normalement doit me retourner tous les devis avec le champ de la colonne D_CLOTURE_REELE plein.

    Et la il me retourne absolument rien !


    A l'inverse quand je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE D_CLOTURE_REELLE IS NULL


    Cela ne change rien au résultat de ma requête !


    A votre avis d’où cela peut venir ?

    Cdlt
    Dernière modification par aieeeuuuuu ; 23/06/2014 à 11h25. Motif: balise code

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    bonjour,


    vous avez plusieurs conditions qui portent sur la colonne REF_D_DEVIS.

    Une de ces conditions (autre que IS NULL / IS NOT NULL) doit rendre la sélectivité de votre requête à 0.

  3. #3
    Invité
    Invité(e)
    Par défaut re
    Je ne comprend pas !

    Si je remplace ça:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    WHERE REF_D_DEVIS IS NOT NULL
    AND INTERVENTION.D_CLOTURE_REELLE IS NOT NULL

    Par ça:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    WHERE REF_D_DEVIS!='0'
    AND D_CLOTURE_REELLE IS NOT NULL

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    Pardon, je me suis mélangé.

    Si vous enlevez toute condition sur D_CLOTURE_REELLE, est-ce que des lignes sont retournées ?

  5. #5
    Invité
    Invité(e)
    Par défaut re
    Oui !
    C'est des que je pose cette condition qu'il ne me renvoi plus rien !

  6. #6
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Par défaut
    Bah dans ce cas c'est que vous n'avez aucune ligne dans la table intervention qui répond à cette règle "NOT NULL" + vos autres critères de sélections

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/11/2007, 22h23
  2. Aide Requête SQL
    Par jjg65 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 26/07/2007, 10h37
  3. Aide requête SQL - UPDATE phpmyadmin
    Par laulau37 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/06/2007, 10h19
  4. Aide requête sql
    Par viny dans le forum PostgreSQL
    Réponses: 18
    Dernier message: 14/09/2006, 21h31
  5. Aide Requête SQL (UPDATE)
    Par Glowprod dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/07/2006, 14h04

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