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

SQL Oracle Discussion :

Champs dépendant d'un autre champ case


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2009
    Messages : 171
    Par défaut Champs dépendant d'un autre champ case
    Bonjour à tous,

    Je souhaiterais savoir s'il était possible d'optimiser une requête qui est de la forme 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
    SELECT 
    CASE 
       WHEN (cond1) THEN 1
       WHEN (cond2) THEN 1
       ELSE 0
    END AS flag,
     
    ...(autres champs à récupérer)...
     
    CASE 
       WHEN (cond1) THEN monchamp
       WHEN (cond2) THEN monchamp
       ELSE null
    END AS monchamp
     
    FROM matable

    Sans être obligé de passer par une sous-requête (car j'en ai déjà 3).

    Et est-ce qu'il vaut mieux faire une sous requête de plus quand même, sachant que j'ai 4 champs qui dépendent de mon flag.

    Merci d'avance et bonne journée à tous !

  2. #2
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Détaillez un peu votre requête parce qu'il n'y rien à optimiser dans le case (à part un réarrangement cosmétique des tests cond1 e cond2).

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2009
    Messages : 171
    Par défaut
    En fait c'était juste pour savoir s'il y avait une possibilité de récupérer la valeur de flag dans la suite de la requête, afin de ne pas avoir à effectuer 5 fois les mêmes contrôles, mais je suppose que ce n'est pas possible sans faire une sous requête ?

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 953
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 953
    Par défaut
    Citation Envoyé par Bouga74 Voir le message
    mais je suppose que ce n'est pas possible sans faire une sous requête ?
    Exactement, mais tu peux factoriser la requête en passant par une sous-requete pour plus de lisibilité avec un WITH par exemple, l'optimiseur se chargera de faire la réécriture de la requête pour l'exécution.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur
    Inscrit en
    Juin 2009
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2009
    Messages : 171
    Par défaut
    Ok merci bien, je vais faire ça !

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

Discussions similaires

  1. [AC-2010] Valeur par défaut d'un champ dépendant d'un autre champ
    Par deedoo12 dans le forum Modélisation
    Réponses: 2
    Dernier message: 25/10/2013, 16h37
  2. Query d'un "entity field" dépendant d'un autre champ
    Par Papynouche dans le forum Doctrine2
    Réponses: 1
    Dernier message: 26/08/2012, 20h49
  3. [AC-2003] champ dépendant d'un autre champ dans une table
    Par josi1986 dans le forum Modélisation
    Réponses: 3
    Dernier message: 21/07/2011, 17h10
  4. créer un champs dépendant d'un autre
    Par philegue dans le forum IHM
    Réponses: 4
    Dernier message: 14/02/2008, 21h39
  5. Numéro Auto dépendant d'un autre champ
    Par ob1knob dans le forum Access
    Réponses: 2
    Dernier message: 17/07/2006, 22h54

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