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 :

Retourner une colonne même pour une table vide


Sujet :

MS SQL Server

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut Retourner une colonne même pour une table vide
    Bonjour,

    Voilà, j'exécute la requête suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COALESCE(MAX(id_motif), 0) AS id_motif, 1 AS id_langue, 'coucou' AS libelle FROM meTable GROUP BY id_motif
    J'aimerais que cette requête me renvoie une ligne même si la table est vide (je pensais que le COALESCE ferait l'affaire mais en fait non...)

    Comment puis-je m'y prendre pour faire ceci en une seule requête?

    (si c'est vraiment pas possible alors je le ferais en 2 étapes... mais je me dis que ça doit bien exister, non?)
    Arrêtez de poster des liens! Expliquez! (ça évite les erreur HTTP 404)

    L'homme est plus fort que la machine... ne renoncez jamais


  2. #2
    Membre émérite Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Points : 2 845
    Points
    2 845
    Par défaut
    Salut !
    Je pense pas que ça va te plaire, mais voici une idée tirée par les cheveux :
    tu fais une jointure externe bidon.

    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT mestrucs
    FROM sysobjects a LEFT OUTER JOIN matable b
    ON b.pk = b.pk
    WHERE a.name = 'matable'
    GROUP BY a.name, b.mongroupby
    Les contraintes (pour ne pas fausser les résutlats...) :
    - ta clause WHERE identifie de manière unique une ligne de a
    - ta jointure bidon est faite sur l'identifiant unique de la table b

    (c'est ma photo)
    Paku, Paku !
    Pour les jeunes incultes : non, je ne suis pas un pokémon...

    Le pacblog : http://pacmann.over-blog.com/

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 480
    Points : 357
    Points
    357
    Par défaut
    Merci pour ta réponse pacmann.

    Effectivement ça me plaît

    C'est dommage, j'ai déjà fait mon Dev en le faisant en 2 étapes... mais je met quand même ton idée de côté
    Arrêtez de poster des liens! Expliquez! (ça évite les erreur HTTP 404)

    L'homme est plus fort que la machine... ne renoncez jamais


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

Discussions similaires

  1. Réponses: 4
    Dernier message: 12/03/2015, 11h46
  2. Réponses: 3
    Dernier message: 29/03/2011, 20h38
  3. Insertion d'une valeur null pour une colonne
    Par bigggalll dans le forum Développement de jobs
    Réponses: 3
    Dernier message: 24/03/2010, 15h01
  4. espace colonne différente pour une même feuille
    Par stéphanie123 dans le forum Excel
    Réponses: 4
    Dernier message: 05/12/2009, 09h58
  5. Union de 2 tables pour une colonne
    Par charleshbo dans le forum Langage SQL
    Réponses: 4
    Dernier message: 18/04/2006, 17h23

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