PL\SQL

Résolu
Bonjour ,

mon probleme c'est que j' deux tables non identiques , pour lesquelles je veux afficher leurs ligne un apres un , c'est pour cela que je voudrais faire une boucle for avec PL\SQL en ORACLE sur les deux table et afficher leurs ligne .
example
table1(id, nom, prenom)
table 2(id,age)
j'ai fait
FOR i in (SELECT id FROM table 1 order by id) LOOP
SELECT * from table1 where id=i
SELECT * from table 2 where id=i
END LOOP;
et ça ne marche pa
je vous pris de m'aider c'est urgent
merci d'avance

4 réponses

  1. Modérateur
    Bonjour,

    Je ne vois pas l'intérêt d'un pl/sql pour faire celà (et ne suis pas du tout sûr de ta syntaxe). Un simple sql avec une jointure sur les 2 tables doit suffire :

    select table1.id, nom, prenom, age
    from table1, table2
    where table1.id = table2.id
    /

    cdlt

    Un étranger, c'est un ami qu'on n'a pas encore rencontré.
    0
    1. Merci jee pee pour ta reponse ,mais elle ne repond pas à ma question , je vous donne un example si j'ai deux tables table1 (1,toto1,toto1 ; 2,toto2,toto2) et table 2(1, 40; 2, 35 ) j'aimerais afficher ligne 1: toto1,toto1, ligne 2: 40, ligne 3 :toto2,toto2, ligne 4: 35 c-a-d avoir comme sortie 4 ligne. je pense que la jointure ne suffit pas
      0
      1. Modérateur
        je mets une colonne id à 10 c , le nom a 15, le prenom a 15 la ligne avec une largeur de 43 caractères, l'age sera sur une seconde ligne

        set line 43
        column id format a10
        column nom format a15
        column prenom format a15
        column age format a5

        select table1.id, nom, prenom, age
        from table1, table2
        where table1.id = table2.id
        /

        Un étranger, c'est un ami qu'on n'a pas encore rencontré.
        0
        1. Bonjour,

          Merci jee pee de votre réponse , ça m'a résolu le problème
          0