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

Développement SQL Server Discussion :

help : sous requête dans CASE


Sujet :

Développement SQL Server

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 7
    Points
    7
    Par défaut help : sous requête dans CASE
    Bonjour,

    Est il possible de faire des sous requêtes dans le THEN d'un case ?

    J'ai des table du genre

    produits
    - ID
    - Nom
    - ID_User1
    - ID_User2

    user1
    - ID
    - Nom

    user2
    - ID
    - Nom

    soit id_user1 ou id_user2 est remplie donc j'ai fait comme requête :

    SELECT
    CASE
    WHEN ID_User1 IS NOT NULL THEN (SELECT Nom FROM user1 WHERE ID=ID_User1)
    WHEN ID_User2 IS NOT NULL THEN (SELECT Nom FROM user2 WHERE ID=ID_User2)
    END as Nom
    FROM produits


    Mais il ne veut pas de ma syntaxe, existe t il une autre solution ?

    Merci d'avance

  2. #2
    Membre chevronné Avatar de Jinroh77
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2006
    Messages
    1 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Février 2006
    Messages : 1 964
    Points : 2 145
    Points
    2 145
    Par défaut
    Il manque des petites choses dans votre syntaxe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT
    CASE
    WHEN ID_User1 IS NOT NULL THEN (SELECT Nom FROM user1 WHERE ID=ID_User1)
    ELSE CASE
    WHEN ID_User2 IS NOT NULL THEN (SELECT Nom FROM user2 WHERE ID=ID_User2)
    END END as Nom
    FROM produits
    Si le User 1 <> NULL alors traitement, sinon, si le User2 <> NULL alors traitement.

    P.S. : Pensez aux balises CODE, merci
    Alexandre Chemla - Consultant MS BI chez Masao

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    ok merci en fait mon problème était que je ramener deux champs dans ma sous requête.

    Encore merci

  4. #4
    Membre chevronné

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Points : 1 758
    Points
    1 758
    Par défaut
    Oui en effet.
    Tu peux aussi penser aux fonctions ISNULL et COALESCE pour résoudre ton probleme. Plus d'info dans l'aide

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

Discussions similaires

  1. sous-requête dans le SET d'un update
    Par anikeh dans le forum Access
    Réponses: 2
    Dernier message: 26/09/2006, 16h08
  2. [SQL] Sous requêtes dans INSERT
    Par Romalafrite dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 07/09/2006, 14h24
  3. Sous requête dans Access
    Par ob1knob dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 10/08/2006, 17h30
  4. Sous requêtes dans un SELECT ??
    Par solp dans le forum Langage SQL
    Réponses: 2
    Dernier message: 22/03/2006, 15h39
  5. Sous-requête dans la clause Select
    Par Danger dans le forum WinDev
    Réponses: 2
    Dernier message: 24/05/2005, 17h33

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