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 :

Sélectionner la date de dernière mises à jour d'une variable [SQL]


Sujet :

SAS Base

  1. #1
    Membre expérimenté
    Homme Profil pro
    Attaché statisticien
    Inscrit en
    Mai 2011
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Attaché statisticien
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2011
    Messages : 687
    Points : 1 581
    Points
    1 581
    Par défaut Sélectionner la date de dernière mises à jour d'une variable
    Bonjour

    J'ai une table composé d'une variable date (time) , une variable identifiant (id) et d'autres variables.

    Je souhaiterais sélectionner pour chaque individus (id) la ligne correspondant à la dernière mise à jour.

    En étape data cela ne me pose aucun problèmes cela se traduirait par le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    proc sort data=MaTable; by id time;run;
     
    data MaSelection; set MaTable; by id;
    if last.id;run;
    Je voudrais faire la même chose mais avec la proc SQL , et je sèche...

  2. #2
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Bonjour Jérôme.
    La requête en SQL est quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT *, MAX(time) AS derniereMaj
    FROM maTable
    GROUP BY id
    HAVING time = derniereMaj
    ;
    Bon courage.
    Olivier
    Bon courage.
    Olivier

  3. #3
    Membre expérimenté
    Homme Profil pro
    Attaché statisticien
    Inscrit en
    Mai 2011
    Messages
    687
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Attaché statisticien
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2011
    Messages : 687
    Points : 1 581
    Points
    1 581
    Par défaut
    Bonjour Olivier

    et merci !

    C'est parfait.

    voici le code final donc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    proc sql;
    create table MaSelection
    as SELECT *, MAX(time) AS derniereMaj
    FROM MaTable
    GROUP BY id
    HAVING time = derniereMaj
    ;quit;

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

Discussions similaires

  1. [Joomla!] Date de dernière mise à jour du site
    Par LLD35235 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 7
    Dernier message: 28/12/2014, 22h21
  2. Réponses: 2
    Dernier message: 31/07/2008, 11h44
  3. [MySQL] Récupérer date de dernière mise à jour + envoie mail
    Par gueud dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 05/03/2008, 16h25
  4. date de dernière mise à jour d'un site
    Par laurentSc dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 03/09/2007, 14h02
  5. Réponses: 14
    Dernier message: 04/01/2007, 22h35

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