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

Oracle Discussion :

Problème exécution requête simple !


Sujet :

Oracle

  1. #1
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Avril 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Avril 2010
    Messages : 135
    Points : 65
    Points
    65
    Par défaut Problème exécution requête simple !
    Bonjour,

    J'ai un problème d'exécution d'une requête qui, à mon avis, est très simple mais elle ne retourne aucune donnée alors qu'elle doit en retourner !. Ma requête est la suivante:

    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
    16
    17
    18
    SELECT
     
      T_TABLE_CLIENT.Code_Magasin,
      T_TABLE_CLIENT.Code_Client,
      T_TABLE_CLIENT.Nom_Client
     
    FROM
     
      T_TABLE_CLIENT
     
    WHERE
     
      T_TABLE_CLIENT.Code_Pro  In  ('06','07')
      AND
      T_TABLE_CLIENT.Code_Magasin  <>  '834'
      )
      AND 
      T_TABLE_CLIENT.Nom_Client like '%XYZ%'
    Ce qui me surprend, c'est quand j'enlève la condition dans le Where:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    T_TABLE_CLIENT.Code_Magasin  <>  '834'
    Ma requête retourne les données dont j'ai besoin !
    Je ne comprends pas l'origine du problème, je n'ai pas de jointure à vérifier et je me base sur une seule table. C'est hallucinant non ?

    Si vous avez une piste, merci d'avance.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 386
    Points
    18 386
    Par défaut
    Que donne cette requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
      SELECT Code_Magasin
           , count(*)
        FROM T_TABLE_CLIENT
       WHERE Code_Pro IN ('06', '07')
         AND Nom_Client LIKE '%XYZ%'
    GROUP BY Code_Magasin;

  3. #3
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Avril 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Avril 2010
    Messages : 135
    Points : 65
    Points
    65
    Par défaut
    no rows selected

  4. #4
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Le résultat est incohérent avec ta phrase
    Ce qui me surprend, c'est quand j'enlève la condition dans le Where:
    T_TABLE_CLIENT.Code_Magasin <> '834'
    Ma requête retourne les données dont j'ai besoin !
    Attention aux champs null (genre code_magasin)
    NULL n'est ni égal, ni différent de '834'
    Si code_magasin peut être null et que tu veux afficher ces données, il faut mettre un NVL ou un OR code_magasin IS NULL

  5. #5
    Membre du Club
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Avril 2010
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Avril 2010
    Messages : 135
    Points : 65
    Points
    65
    Par défaut
    Chapeau bas McM !

    Les enregistrements pour le champ "code magasin" étaient nulls. Avec un OR code_magasin IS NULL, ça fonctionne .

    Merci pour la précision: NULL n'est ni égal, ni différent de '834'

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

Discussions similaires

  1. [AC-2007] Problème exécution requête
    Par kakahouette dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 06/03/2011, 16h15
  2. problème exécution requête BDD
    Par styne dans le forum C#
    Réponses: 1
    Dernier message: 17/11/2010, 00h49
  3. problème avec requête simple pgsql
    Par php_faboul dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 30/04/2010, 10h50
  4. Problème de requête simple
    Par Poisell dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 01/04/2009, 15h50
  5. [ODBC] Problème exécution requête avec connexion ODBC/PHP
    Par nicaud dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 20/04/2008, 13h20

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