Sous requete retournant une table

tleboukaka Messages postés 79 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 5 mai 2010 - 29 sept. 2007 à 20:49
tleboukaka Messages postés 79 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 5 mai 2010 - 1 oct. 2007 à 11:44
J’ai une requête (une
sous-requëte retournant une table) du genre






 






SELECT *





FROM (SELECT  champ1, AVG (champ2), champ3






           
  FROM tbl1






           
  GROUP BY champ3)
T1






            INNER JOIN (SELECT champ4, champ5






                                   FROM (SELECT  champ1, AVG (champ2), champ3






           
 
                                 FROM tbl1






           
 
 
                                 GROUP
BY champ3) ) T2






            ON T1.champ1= T2.champ2






 







 

Dans L’IDE Delphi, événement
sur clic d’un bouton





Nom de TQuery = qryBulletin





je tape ce qui suit














 

qryBulletin.Sql.Add (‘SELECT
*’) ;





qryBulletin.Sql.Add (‘FROM
(SELECT  champ1, AVG (champ2), champ3’






           
 
                     
            + ‘FROM tbl1’





+ ‘GROUP BY champ3) T1 ;





qryBulletin.Sql.Add   (‘INNER JOIN (SELECT champ4, champ5 ’






                                +
‘ FROM (SELECT  champ1, AVG (champ2),
champ3 ‘






           
 
                                 + ‘ FROM tbl1 ‘






           
 
                                 + ‘GROUP BY
champ3) ) T2 ‘) ;





qryBulletin.Sql.Add (‘ON
T1.champ1 =T2.champ2’) ;














mais à l'exécution quand je clique sur le bouton

il y a un message d’erreur (Invalid use of key token SELECT line 2) 
signalé à la ligne 2 sur le SELECT





Aidez moi svp !

Thibeault Lionel Eric

2 réponses

Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
30 sept. 2007 à 14:40
t'as essayé de parentheser ton inner join?

SELECT *

FROM ((SELECT  champ1, AVG (champ2), champ3

              FROM tbl1

              GROUP BY champ3) T1

            INNER JOIN (SELECT champ4, champ5

                                   FROM (SELECT  champ1, AVG (champ2), champ3

                                               FROM tbl1

                                               GROUP BY champ3) ) T2

            ON T1.champ1=T2.champ2)

 
0
tleboukaka Messages postés 79 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 5 mai 2010
1 oct. 2007 à 11:44
Salut !

Je rappele en clair ma difficulté :
j'ai une sous requête SQL que j'aimerai écrire dans l'IDE de Delphi
c à d sur ma fiche il y a un Bouton et un dbGrid (affichant le contenu de la requete)
un clic sur le bouton devra declencher l'execution de ma requete.
Voici la requete (tQuery = qryBulletin) avec la commande "qryBulletin.Sql.Add...."

SELECT *
FROM (SELECT champ1, AVG (champ2), champ3
                FROM Tbl1
                GROUP BY champ3) T1
                INNER JOIN (SELECT champ4, champ5
                                         FROM (SELECT  champ1, AVG (champ2), champ3
                                                       FROM Tbl1

                                                       GROUP BY champ3)) T2
                ON T1.champ1=T2.champ2

Qui peut m'aider svp !
comment donc je vais integrer cette requête dans Delphi ?
sur quelles lignes j'aurai à mettre l'instruction "qryBulletin.Sql.Add...."  ?

Thibeault Lionel Eric
0
Rejoignez-nous