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 MySQL Discussion :

Requête avec NOT EXISTS


Sujet :

Requêtes MySQL

  1. #1
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut Requête avec NOT EXISTS
    Bonjour,

    J'ai 2 tables, l'une qui contient des dossiers, l'autre qui contient des informations lors de la clôture du dossier.

    Je veux faire une requête qui me donne la liste des dossiers qui ne sont pas clôturés ou dont la date définitive de clôture est à 0.

    J'ai fait ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT dossier.id_type_adresse, 'Dossier non clos' AS 'Type de Dossier', clot_date_dossier FROM dossier
    LEFT OUTER JOIN cloture
    ON dossier.id_dos = cloture.id_dos
    AND cloture.id_trt BETWEEN 1 AND 4
    WHERE (NOT EXISTS (SELECT * FROM cloture) 
    OR clot_date_dossier = '0000-00-00') 
    AND dossier.id_trt BETWEEN 1 AND 4
    Mais il ne me donne que la liste des dossiers ayant un enregistrement dans la table cloture. Comme je peux avoir un dossier sans avoir d'enregistrement de clôture j'avais fais le NOT EXISTS, mais il n'en tient pas compte.

    Je l'ai mal positionné ?
    Merci d'avance
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  2. #2
    Membre régulier
    Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2003
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juillet 2003
    Messages : 94
    Points : 116
    Points
    116
    Par défaut
    Bonjour,

    Cette requête te donnera la liste des DOSSIERS qui n'ont pas de lignes dans la table CLOTURE
    ou s'ils ont une ligne dans CLOTURE cette date est à 0

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT dossier.id_dos
    FROM dossier
    LEFT OUTER JOIN cloture ON dossier.id_dos = cloture.id_dos
    WHERE cloture.id_dos is NULL
    OR clot_date_dossier = '0000-00-00'

    Selecta

  3. #3
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut
    Merci Selecta, j'avais fait avec IS NULL, mais je m'étais trompé de champ.
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

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

Discussions similaires

  1. Requête avec not exist
    Par moimoi78 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 28/05/2012, 17h47
  2. Comment faire fonctionner une requête avec NOT EXISTS
    Par arnaudperfect dans le forum Requêtes
    Réponses: 2
    Dernier message: 13/11/2007, 10h39
  3. sql requête avec NOT EXISTS
    Par wang_xue dans le forum Langage SQL
    Réponses: 3
    Dernier message: 17/10/2007, 19h48
  4. [SQL Server] Probleme avec not exists
    Par maxxou dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/03/2006, 16h51
  5. Requète avec NOT EXISTS
    Par missllyss dans le forum SQL
    Réponses: 2
    Dernier message: 23/09/2003, 15h20

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