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

Langage SQL Discussion :

Eclater une colonne en plusieurs selon critère


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 79
    Points : 64
    Points
    64
    Par défaut Eclater une colonne en plusieurs selon critère
    BONJOUR
    voici mon problème

    j'ai ça:

    DNIS.......Numéro
    2000.......A
    2001.......B
    2002.......C
    4000.......A
    4001.......B
    4002.......C
    7000.......A
    7001.......B
    7002.......C

    et je veux ça:

    DNIS2....DNIS4....DNIS7.......Numéro
    2000.......4000.......7000...........A
    2001.......4001.......7001...........B
    2002.......4002.......7002...........C


    Comment faire en SQL?

    J'ai un peu oublié....

    merci de votre aide!

  2. #2
    Membre éprouvé
    Avatar de HULK
    Inscrit en
    Juillet 2003
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 274
    Points : 1 280
    Points
    1 280
    Par défaut
    en une seule requete ca doit etre difficile, si tu es sous sql server tu dois passer par une procedure stockée.
    j'suis vert !

  3. #3
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 79
    Points : 64
    Points
    64
    Par défaut
    le pire...tu vas rire...
    je suis en Access

    donc pas possible selon toi?

  4. #4
    Membre éprouvé
    Avatar de HULK
    Inscrit en
    Juillet 2003
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 274
    Points : 1 280
    Points
    1 280
    Par défaut
    je connais pas access mais je doute qu'il y ai une possibilité de faire des procedures stockées

    ou alors il faut faire plusieurs requete à la suite.
    j'suis vert !

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 802
    Points
    30 802
    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  d2.dnis AS  dnis2
        ,   d4.dnis AS  dnis4
        ,   d7.dnis AS  dnis7
        ,   d2.numero AS numero
    FROM  dnis  AS d2
      INNER JOIN  dnis  AS d4
        ON  d2.numero = d4.numero
      INNER JOIN  dnis  AS d7
        ON  d2.numero = d7.numero
    WHERE SUBSTR(d2.dnis, 1, 1) = '2'
      AND SUBSTR(d2.dnis, 1, 1) = '4'
      AND SUBSTR(d2.dnis, 1, 1) = '7'
    ;
    Vérifier la syntaxe de substr...
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  6. #6
    Membre expert
    Avatar de TheLeadingEdge
    Inscrit en
    Mai 2005
    Messages
    1 199
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 1 199
    Points : 3 103
    Points
    3 103
    Par défaut
    Bonjour,

    Citation Envoyé par Tatoine
    le pire...tu vas rire...
    je suis en Access
    donc pas possible selon toi?
    c toi qui vas rire
    pour le coup c encore plus facile en access

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    TRANSFORM MAX(RIGHT(latable.dnis,4))
    SELECT latable.numero
    FROM latable
    GROUP BY latable.numero
    PIVOT  LEFT (latable.dnis,1);
    A +

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/12/2011, 17h12
  2. [Toutes versions] Eclater une table en plusieurs en fonction d'un critère dans un champ
    Par Invité dans le forum Contribuez
    Réponses: 2
    Dernier message: 09/05/2011, 18h46
  3. scinder une colonne en deux selon un critère
    Par fx007 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/06/2008, 11h01
  4. Réponses: 2
    Dernier message: 11/05/2007, 09h16
  5. Réponses: 5
    Dernier message: 07/11/2006, 11h16

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