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

SAS Base Discussion :

Jointure avec des type des données différents [SQL]


Sujet :

SAS Base

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 376
    Points : 199
    Points
    199
    Par défaut Jointure avec des type des données différents
    Bonjour,

    J'ai une requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    proc sql;
       select *
       from table
       where verif = "10";
    quit;
    Le champ "verif" peut être soit de type entier soit de type chaîne. Cela dépend de la table.
    Mais le filtre "10" est toujours de type chaîne.

    Comment puis-je faire en SAS pour que "verif" soit toujours comparé en chaine même s'il est en entier ?

    L'objectif est de ne pas avoir l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ERROR: L'expression utilisant égal (=) a des composants qui sont de différents types de données.
    J'ai pensé au "INPUT" mais sans succès.

    Merci d'avance.

  2. #2
    Membre régulier
    Inscrit en
    Novembre 2008
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 86
    Points : 83
    Points
    83
    Par défaut
    As tu déjà essayer ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       a.verif=input(b.verif,8.) ;

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 161
    Points : 224
    Points
    224
    Par défaut
    je propose


  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 113
    Points : 107
    Points
    107
    Par défaut
    Je ferai un proc contents pour savoir si ton champ vérif est caractère ou numérique et mettrai la réponse dans une macro variable.
    Ainsi lors de ton test ca ferait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    %if &type_v = C %then %do;
       type  = "10"
    %end;
    %else %do;
       type = 10
    %end;
    Je pense que ca serait le plus propre

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 376
    Points : 199
    Points
    199
    Par défaut
    Merci à tous pour ces réponses astucieuses.

    J'ai écris le code suivant ça fonctionne très bien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    PROC CONTENTS DATA=table OUT=structure(KEEP=NAME TYPE) noprint; RUN;
     
    PROC SQL noprint; 
    	SELECT TYPE INTO: var 
    	FROM structure 
    	WHERE NAME = "&cle."; 
    QUIT;
     
    %IF (&var. = 2) %THEN %DO;
    	%LET valeur_key = "&val_key";
    %END;
    %ELSE %DO;
    	%LET valeur_key = &val_key;
    %END;

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

Discussions similaires

  1. Comparaison des types des arguments des règles SWRL
    Par Etudiante_Ines dans le forum Ontologies
    Réponses: 0
    Dernier message: 14/11/2013, 11h29
  2. Menu principal pour des bases de données différentes ?
    Par Kareg dans le forum Modélisation
    Réponses: 30
    Dernier message: 20/08/2007, 16h10
  3. Format des type de données
    Par caballero dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 09/07/2007, 17h58
  4. Extension des Types de Données(CHAR,CLOB)
    Par blackstreet dans le forum Oracle
    Réponses: 9
    Dernier message: 28/04/2006, 22h39
  5. Réponses: 2
    Dernier message: 22/09/2003, 11h23

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