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

MS SQL Server Discussion :

Case mal synthaxé :o(


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 88
    Par défaut Case mal synthaxé :o(
    Bonjour

    qqun peux me venir en aide SVP


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT     CASE substring(TBL1.CHP, 3, 1) WHEN 'E' THEN
                              (SELECT     RSULT
                                FROM          TBL2
                                WHERE      ID_CO = TBL1.REF) WHEN 'C' THEN
                              (SELECT     RSULT
                                FROM          TBL2
                                WHERE      ID_CO = TBL1.CODBAR) END
    FROM TBL1
    ça marche correctement
    Mais maintenant je veux faire un OR au niveau du premier when (WHEN 'A' OR 'D')...

    et le requeteur me dit : erreur de syntaxe au niveau du 'OR'
    alors qu'un AND no problemo???

    Merci

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 021
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 021
    Billets dans le blog
    6
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT  CASE 
               WHEN substring(TBL1.CHP, 3, 1) = 'E' 
                  THEN (SELECT     RSULT
                        FROM          TBL2
                        WHERE      ID_CO = TBL1.REF) 
               WHEN substring(TBL1.CHP, 3, 1) = 'C' 
                  THEN (SELECT     RSULT
                        FROM          TBL2
                        WHERE      ID_CO = TBL1.CODBAR) 
               WHEN substring(TBL1.CHP, 3, 1) in ('A', 'D')
                  THEN ???
           END
    FROM TBL1
    Lisez l'article que j'ai écris à ce sujet :
    http://sqlpro.developpez.com/cours/sqlaz/select/#L7


    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. [XL-2010] Synthaxe Select Case étrange
    Par nono63 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 29/05/2013, 23h14
  2. [XL-2010] Select case mal utilisé
    Par tompom3108 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/01/2012, 17h34
  3. [AC-2003] PASS-THROUGH QUERY et synthaxe CASE
    Par apnw7931 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 17/03/2011, 20h30
  4. SP : Synthaxe CASE (switch)
    Par BenoitM dans le forum Développement
    Réponses: 3
    Dernier message: 17/07/2009, 12h51
  5. case sensible
    Par zdra dans le forum C++Builder
    Réponses: 2
    Dernier message: 29/11/2002, 21h15

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