Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > SAS > SAS Base
SAS Base Forum d'entraide sur SAS base : étape data, procédures non statistiques, procédures non graphiques, SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/04/2008, 11h10   #1
Membre régulier
 
Inscription : septembre 2003
Messages : 193
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 193
Points : 84
Points : 84
Par défaut SQL conversion de dates

Bonjour,

Je travail sous SAS et j'ai une requête du type :

Code :
SELECT maDate FROM maTable;
Cette requête (sous SAS) me créer un tableau dont la colonne maDate sera du type Date(normal ...).

Seulement j'aimerai qu'elle soit du type alpha-numérique (texte). Est - il possible de forcer le type de données que va nous retourner SQL ?

Ou plus simplement (je n'y suis pas arriver), d'utiliser une fonction qui convertit directement la valeur en texte dans la requête, du genre :

Code :
SELECT to_char(maDate) FROM maTable;
Un truc comme ca ....

Merci d'avance ...
Tyler Durden est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 11h47   #2
Rédactrice
 
Avatar de Fleur-Anne.Blain
 
Inscription : juillet 2006
Messages : 2 662
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 2 662
Points : 5 590
Points : 5 590
Bonjour,

ca pourra peut-etre t'aider :

http://www.developpez.net/forums/sho....php?p=3140692

a noter que la fonction TO_CHAR n'est pas disponible dans tous les SGBD et que ca n'appartient pas aux normes SQL donc fort probable que ca ne fonctionne pas avec SAS.
__________________
la culture c'est comme la confiture moins on en a plus on l'étale.

Vous souhaitez contribuer aux rubriques Solutions d'entreprises ou BI, contactez-moi

Mes tutos
Fleur-Anne.Blain est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 12h13   #3
Membre Expert
 
Inscription : mars 2005
Messages : 1 028
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 1 028
Points : 1 278
Points : 1 278
Envoyer un message via Yahoo à bahraoui
Bonjour,
Il faut connaitre le format de sortie que tu souhaites.
Voici un exemple de conversion d'une date d'un format date9. en chaine de caractère dd/mm/aaaa.

Code :
1
2
3
4
5
6
 
DATA t1;
format a date9.;
a=date();
y=put(a,ddmmyys10.);
run;
bahraoui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 10h35   #4
Membre confirmé
 
Inscription : avril 2008
Messages : 233
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : avril 2008
Messages : 233
Points : 216
Points : 216
Tu peux utiliser la même fonction put de SAS dans le requêtes SQL :
Code :
1
2
3
4
5
6
proc sql;
CREATE TABLE T2 AS
	SELECT put(DATE1, yymmdd10.)
	FROM T1
;
quit;
green_fr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2008, 15h35   #5
Responsable SAS
 
Inscription : septembre 2006
Messages : 1 973
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 1 973
Points : 4 810
Points : 4 810
Bonjour,
Si ton problème est solutionné merci de cliquer sur
Si tu as utilisé une autre solution que celle proposée merci de la faire partager.
Fafabzh
fafabzh6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h11.


 
 
 
 
Partenaires

Hébergement Web