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 :

Requête avec inclusion de valeur non numérique


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut Requête avec inclusion de valeur non numérique
    Salut a tous.

    J'ai des entrées dans un table qui contienne un champ position.

    Les valeurs pou ce champ sont organisées comme des ensembles inclus les un dans les autres.

    Par exemple
    World
    ----Europe
    ------France
    ------Italie
    ----Asie
    ------Chine
    ------Inde
    ----Amérique du nord

    Supposons jai une entrée E1 dans ma table avec la position 'Europe', et une entrée E2 avec pour position 'France'

    Alors une recherche avec la valeur 'France' doit me donner E2 (c'est la plus précise) tandis qu'avec 'Italie' ou 'Europe' je dois avoir E1.

    La solution que j'imagine pour le moment, c'est de faire une requête
    avec le niveau de précision maximal et si je ne trouve rien, passer au niveau d'au dessus.

    Ya t'il un moyen de faire ca en une seule requête ?

    Merci d'avance.

    David.
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  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,


    Présentez les tables actuelles (nom de la table + nom de colonne pertinente), car là....

  3. #3
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    C'est pas clair ?

    Sinon ceci illustre bien ce que je veux résoudre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    produit | position  
        P1   | France
        P2   | Europe
        P3   | Monde
    Sachant que j'ai les inclusions suivantes de valeurs
    {France,Italie} € {Europe} € {Monde}
    {Chine} € {Asie} € {Monde}

    Si je fais une recherche des produits dispo en France, je veux P1 (et juste P1, car c'est la position la plus précise qui compte qui domine). La même recherche avec Italie ou Europe, doit me sortir P2. Enfin, une recherche avec Asie ou Chine doit me donner P3.

    C'est plus clair ?
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  4. #4
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 456
    Par défaut
    Bonjour,
    Je ne comprends pas pourquoi une recherche sur France ne renvoie que ce qui est dispo en France, alors qu'une recherche sur Italie renvoie ce qui est dispo en Europe... La France n'est plus en Europe ?
    Si je comprends bien, si aucun produit n'est dispo en France, une recherche sur la France renvoie tout ce qui est dispo en Europe, mais dès qu'un produit est "spécifique" à la France, la recherche précédente ne renvoie que ce produit ?
    Soit c'est pas clair, soit c'est bizarre...

    Cela étant dit, difficile de proposer quoi que ce soit sans voir la description des tables impliquées.

    Tatayo.

  5. #5
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    Citation Envoyé par tatayo Voir le message
    Bonjour,
    Si je comprends bien, si aucun produit n'est dispo en France, une recherche sur la France renvoie tout ce qui est dispo en Europe, mais dès qu'un produit est "spécifique" à la France, la recherche précédente ne renvoie que ce produit ?
    C'est ca.

    Et c'est pas bizarre. Si une ligne est présente, c'est que le produit a été modifié pour respecter la réglementation locale. Donc par défaut, si rien n'est pas précisé, on doit chercher dans le niveau au dessus jusqu'à arriver au niveau "Monde".

    Cela étant dit, difficile de proposer quoi que ce soit sans voir la description des tables impliquées.
    Jai aucune table... C'est un futur problème sur lequel je me renseigne.
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  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
    Citation Envoyé par Davidbrcz Voir le message
    Et c'est pas bizarre. Si une ligne est présente, c'est que le produit a été modifié pour respecter la réglementation locale. Donc par défaut, si rien n'est pas précisé, on doit chercher dans le niveau au dessus jusqu'à arriver au niveau "Monde".
    En découpant correctement vos zones (soit avec un arbre soit avec des entités qui représente une zone) vous devriez pouvoir sortir ce genre d'information.

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

Discussions similaires

  1. [A-03] Requête avec toutes les valeurs d'un champ
    Par badeux dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 10/10/2008, 11h22
  2. Réponses: 10
    Dernier message: 12/06/2008, 15h06
  3. [WPF] Storyboard et valeurs non numérique
    Par Invité dans le forum Framework .NET
    Réponses: 3
    Dernier message: 19/11/2007, 20h07
  4. requête avec résultat vide ou non vide
    Par speedev dans le forum Langage SQL
    Réponses: 14
    Dernier message: 11/07/2007, 13h10
  5. Problème avec Me.RecordSource : valeur non conforme
    Par Tchupacabra dans le forum Access
    Réponses: 6
    Dernier message: 02/12/2005, 17h01

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