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

Macro Discussion :

Ajouter nom de la table source


Sujet :

Macro

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    novembre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Ajouter nom de la table source
    Bonjour,
    je vous écris car je ne sais pas comment résoudre le problème suivant:
    j'écris une macro qui prend en entrée une table et qui crée en sortie une table qui correspond à une sélection des champs de la table d'entrée.
    Je souhaiterai ajouter dans le nom de la table source dans la table de sortie, mais je ne trouve pas la fonction qui le permet.

    Merci pour votre aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    %macro select_champs(table,table_out);
    ;
    proc sql;
    %put _global_;
    create table &table_out
    	as select "nom de la table" as source,champ1,champ2
    	from &table;
    	quit;
    %mend select_champs;
    %select_champs(table=table_source,table_out=&table._f);

  2. #2
    Membre éprouvé
    Avatar de m.brahim
    Homme Profil pro
    SAS / BIG DATA
    Inscrit en
    juillet 2011
    Messages
    457
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : SAS / BIG DATA
    Secteur : Conseil

    Informations forums :
    Inscription : juillet 2011
    Messages : 457
    Points : 1 114
    Points
    1 114
    Billets dans le blog
    14
    Par défaut
    Bonjour,
    Pas vraiment sûr d'avoir compris le sujet.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    data table_source_1;
    input table_source_1 champ1 champ2 champ3;
    cards;
    1 2 3 4
    ;
    run;
     
    %macro select_champs(table_in=,table_out=);
    ;
    proc sql;
     
    create table &table_out
    	as select &table_in. as source,champ1,champ2
    	from &table_in;
    	quit;
    %mend select_champs;
     
    %select_champs(table_in=table_source_1,table_out=table_source_1_f);
    Cordilement.
    Certification des Talents de la programmation In Memory Statistics sur HADOOP:
    http://talents-imstat.groupe-avisia....avance?uid=162

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur en SAS/ Statisticien
    Inscrit en
    janvier 2013
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur en SAS/ Statisticien
    Secteur : Enseignement

    Informations forums :
    Inscription : janvier 2013
    Messages : 456
    Points : 1 492
    Points
    1 492
    Par défaut
    Bonjour,
    Je pense que cette discussion, dans le lien suivant, peut être utile pour trouver une solution adéquate à ta problématique :

    https://www.developpez.net/forums/d1...rs-d-variable/

    Bon courage
    Cdt Ward

  4. #4
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    avril 2008
    Messages
    1 877
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : avril 2008
    Messages : 1 877
    Points : 4 152
    Points
    4 152
    Par défaut
    Dans SELECT, avec &table entre guillemets (doubles, pas d'apostrophes surtout).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select "&table" as source,champ1,champ2
    	from &table;
    Bon courage.
    Olivier

Discussions similaires

  1. Réponses: 11
    Dernier message: 05/03/2015, 09h53
  2. Changement de nom de table source
    Par Cece06 dans le forum VBA Access
    Réponses: 2
    Dernier message: 20/06/2013, 16h32
  3. Réponses: 0
    Dernier message: 15/02/2013, 15h23
  4. Réponses: 1
    Dernier message: 12/01/2010, 23h18
  5. Ajouter une colonne à une table dont le nom est variable
    Par Badtothebone93 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 23/04/2009, 18h32

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