Discussion: Double inner join

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    janvier 2011
    Messages
    953
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : janvier 2011
    Messages : 953
    Points : 544
    Points
    544

    Par défaut Double inner join

    Bonjour ,

    J'ai 4 inner join , dont 3 autour d'une table centrale. Le 4ème est un inner join sur une table périphérique . En somme :

    A = table centrable

    B , C , D = table périphérique

    E = second périphérique.

    Le double inner join ne fonctionne pas sur SAS ... Etrangement j'ai fait la même requête sur ORACLE et My SQL et la cela fonctionne ???

    Code SAS : 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
    17
    18
     
    options compress=yes sortsize=max;
     
    libname dbtoto meta library="ma base toto";
     
    proc sql inobs=250;
     
    Create table temp_tout_table as
     
    select *
    from dbtoto.table_centrale
    INNER JOIN dbtoto.table1 ON table_centrale.champ1=table1.champ1
    INNER JOIN dbtoto.table2 ON table_centrale.champ2=table2.champ2
    INNER JOIN dbtoto.table3 ON table_centrale.champ3=table3.champ3
    INNER JOIN dbtoto.table4 ON table3.champ4=table4.champ4
    where table_centrale.statut LIKE 'VALIDE';
     
    quit;

    Code erreur :

    Code SAS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ERROR: Column champ4 could not be found in the table/view identified with the correlation name table3.
    ERROR: Column champ4could not be found in the table/view identified with the correlation name table3.
    ERROR: Column table4.champ4 was found in more than one table in the same scope.
    ERROR: Expression using equals (=) has components that are of different data types.

    Ce type de cas n'est pas possible sur SAS ?

    Merci de l'aiguillage

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    janvier 2011
    Messages
    953
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : janvier 2011
    Messages : 953
    Points : 544
    Points
    544

    Par défaut

    Bonjour,

    Fausse alerte , un champ avait été désactivé dans la table4 ... le champ4. Résultat SAS disait que le champ n'existe pas ... La DSI vient de le remettre , j'aurai pu cherché longtemps

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

Discussions similaires

  1. [AC-2003] Double Inner Join pour table Codier ?
    Par YakiCola dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 23/07/2013, 11h10
  2. Double inner join
    Par richton95 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 29/09/2010, 17h58
  3. Mysql Inner join
    Par ..:: Atchoum ::.. dans le forum Requêtes
    Réponses: 3
    Dernier message: 25/10/2007, 13h21
  4. Double INNER JOIN
    Par benjisan dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 20/06/2007, 17h47
  5. Inner Join & Select
    Par bakaneko dans le forum Langage SQL
    Réponses: 7
    Dernier message: 10/02/2004, 11h48

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