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 :

Y aurait-il un autre moyen de faire ceci ? [2016]


Sujet :

Développement SQL Server

  1. #1
    Membre habitué
    Homme Profil pro
    Assistant technique
    Inscrit en
    Février 2007
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Assistant technique
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2007
    Messages : 336
    Points : 197
    Points
    197
    Par défaut Y aurait-il un autre moyen de faire ceci ?
    Bonjour tout le monde,

    Des fois en SQL je dois utiliser des informations contenant une sorte de table de correspondance, mais sans créer de Table.

    J'utilise des CTE :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT
    	1 AS Rang,
    	'AAAA' AS Projet
    UNION
    SELECT
    	2 AS Rang,
    	'BBBB' AS Projet
    UNION
    SELECT
    	3 AS Rang,
    	'CCCC' AS Projet
    Est-ce qu'il y aurait un autre moyen en T-SQL de faire ça ?

    Merci par avance.

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

    Informations forums :
    Inscription : Août 2008
    Messages : 2 950
    Points : 5 849
    Points
    5 849
    Par défaut
    Vous pouvez le mettre dans une vue, ou dans une fonction qui retourne une table.

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 927
    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 : 21 927
    Points : 51 735
    Points
    51 735
    Billets dans le blog
    6
    Par défaut
    Le plus élégant est d'utiliser un constructeur de table valué :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    WITH 
    T AS
    (SELECT *
     FROM (VALUES (1, 'AAAA'), (2, 'BBBB'), (3, 'CCCC')) AS T0(ID, VAL))
    SELECT * 
    FROM T;
    A +

  4. #4
    Membre habitué
    Homme Profil pro
    Assistant technique
    Inscrit en
    Février 2007
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Assistant technique
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2007
    Messages : 336
    Points : 197
    Points
    197
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Le plus élégant est d'utiliser un constructeur de table valué :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    WITH 
    T AS
    (SELECT *
     FROM (VALUES (1, 'AAAA'), (2, 'BBBB'), (3, 'CCCC')) AS T0(ID, VAL))
    SELECT * 
    FROM T;
    A +
    Merci.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/04/2008, 14h27
  2. D'autres idées pour faire la même chose ?
    Par Gromitou dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 04/05/2006, 13h15
  3. Un autre moyen que les popups ?
    Par bdaboah dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 23/03/2005, 11h48

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