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 :

Supprimer des identifiants présents dans deux tables


Sujet :

SAS Base

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 35
    Points : 33
    Points
    33
    Par défaut Supprimer des identifiants présents dans deux tables
    Bonjour,
    Je dispose de deux bases de données contenant des identifiants, la Base1 contenant 14 millions de lignes, et la Base2 contenant 4 millions d'identifiants qui se trouvent également dans Base1.
    Comment puis-je faire pour supprimer, dans Base1, toutes les lignes correspondant aux identifiants de Base2?

  2. #2
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 99
    Points : 202
    Points
    202
    Par défaut
    Citation Envoyé par taïtonne Voir le message
    Bonjour,
    Je dispose de deux bases de données contenant des identifiants, la Base1 contenant 14 millions de lignes, et la Base2 contenant 4 millions d'identifiants qui se trouvent également dans Base1.
    Comment puis-je faire pour supprimer, dans Base1, toutes les lignes correspondant aux identifiants de Base2?
    Via une proc sql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    proc sql;
    delete 
    from base1
    where idbase1 in (
    select distinct idbase2
    from base2
    );
    quit;

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 35
    Points : 33
    Points
    33
    Par défaut
    merci beaucoup!!

  4. #4
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 35
    Points : 33
    Points
    33
    Par défaut
    en fait "SELECT DISTINCT" ça identifie et supprime les doublons (donc s'il y a des lignes en double, il en supprime une), mais ça ne me selectionne pas les identifiants différents de ceux de la base2.

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 99
    Points : 202
    Points
    202
    Par défaut
    Citation Envoyé par taïtonne Voir le message
    en fait "SELECT DISTINCT" ça identifie et supprime les doublons (donc s'il y a des lignes en double, il en supprime une), mais ça ne me selectionne pas les identifiants différents de ceux de la base2.
    Oui mais le select distinct n'est pas tout seul...
    Le même code avec des commentaires :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    proc sql;
    DELETE                              /*  on supprime les lignes */
    FROM base1                          /*  depuis base1 */
    WHERE idbase1 IN (                  /*  où l'identifiant est dans */
    SELECT DISTINCT idbase2             /*  la liste des identifiants distincts */
    FROM base2                          /*  ramenée depuis base2 */
    );
    quit;

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 35
    Points : 33
    Points
    33
    Par défaut
    merci, ça m'a aidé à comprendre comment ça fonctionne

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 27/10/2011, 09h41
  2. DataForm éditer des données liées dans deux tables.
    Par slyderkiller dans le forum Silverlight
    Réponses: 0
    Dernier message: 18/02/2011, 14h02
  3. Réponses: 3
    Dernier message: 05/02/2010, 04h45
  4. Réponses: 2
    Dernier message: 30/04/2009, 13h46
  5. Réponses: 7
    Dernier message: 22/08/2007, 12h49

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