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�butez Discussion :

Ajout "case of pas" en sql


Sujet :

D�butez

  1. #1
    Membre �clair�
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2002
    Messages
    244
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Consultant informatique

    Informations forums :
    Inscription : Mars 2002
    Messages : 244
    Par d�faut Ajout "case of pas" en sql
    Bonjour,

    Pendant l'ex�cution de mon programme j'ai mis des messages pr�d�finis (par un suffixe) dans le log.
    exemple:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    %put TITRE_UNICITY: TEST D''UNICITE;
    %put MESSAGE: mon message;
    %put MESSAGE: mon deuxième message;
    %put TITRE_INTEGRITY: TEST D''INTEGRITE;
    Je parcours ensuite le log afin de filtrer uniquement certains types de messages.
    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
     
    data _null_;
    	infile logfile truncover;
    	input linetxt $90.;
    	if &err=0 then
    	do;
    	/*case of = TITLE: UNICITY;*/
    	if index(linetxt,"MESSAGE:")>0 and 
    	  index(linetxt,"put MESSAGE:")=0 then 
    		do;
    		file result;
    		res = substrn(linetxt,10,lengthc(linetxt));
    		put res;
    		end;
    	end;
    run;
    J'aurais voulu ici effectuer un "case of" afin d'�viter des test inutiles.
    En effet, si je sais que je suis sur un titre, je ne serai jamais sur un message. --> donc plus la peine de tester.
    En plus, j'ai plusieurs titre et un ligne lue ne peut contenir qu'un seul titre � la fois.
    Y a-t-i moyen d'�viter toute une imbrication de elseif?

    En cherchant sur le net, je vois qu'un case when mais qui s'utilise avec du sql...

  2. #2
    Membre Expert
    Homme Profil pro
    Biostatisticien
    Inscrit en
    Juin 2009
    Messages
    1 206
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activit� : Biostatisticien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 206
    Par d�faut
    attaque par le sql alors

    tu peux �galement le faire par une �tape data en utilisant le select when (qui se termine par un otherwise).

    Attention! le select when, ce n'est pas la m�me chose que du if then imbriqu�...

  3. #3
    Invit�
    Invit�(e)
    Par d�faut
    bonjour, je te propose ce lien:

    http://www2.sas.com/proceedings/sugi27/p096-27.pdf

    j'esp�re que sa pourra t'aider

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [Oracle8i][PL/SQL] CASE ou pas CASE
    Par Titouf dans le forum Oracle
    R�ponses: 9
    Dernier message: 09/08/2006, 22h41

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