REQUETE SQL

Eros2007 Messages postés 36 Date d'inscription mardi 5 septembre 2006 Statut Membre Dernière intervention 16 avril 2023 - 28 sept. 2010 à 20:50
Eros2007 Messages postés 36 Date d'inscription mardi 5 septembre 2006 Statut Membre Dernière intervention 16 avril 2023 - 2 oct. 2010 à 00:37
Bonjour tout le monde.
voila ma question:
j'utilise une requette sql pour pouvoir faire un preview et imprimer par la suite les enregistrements des clients d'une manière globale et individuelle.
mon application et en delphi 7 avec base Paradox7 et quickReport.
j'ai une table client qui est en Maitre et six (06) autres tables qui sont en detail avec la table client.
je suis arriver afaire le preview et l'impression en utilisant une requette sur la table client avec une seule table detail. mais si je veut avoir l'ensemble des enregistrements des differentes tables pour chaque client cela se corse pour moi.
quelqu'un pourrai t'il me guider S.V.P?


la requette est a peu prés:
select code_cli,nom_cli,count(num_trav_ma),count(num_trav_plomb),count(num_trav_peint),....
from table_client C ,table_maconnerie M ,table_plomberie P...
where C.code_cli = M.code_cli
and
C.code_cli = P.code_cli
and ...

group by code_cli,nom_cli

merci à tout ceux qui se pencherons sur mon cas qui pourra aider ceux qui ont le même probleme .

MERCI POUR VOTRE AIDE

3 réponses

Zlub Messages postés 809 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 29 septembre 2010 8
28 sept. 2010 à 22:08
Salut,


N'ayant pas toutes les informations, ma réponse sera à adapter.
Je me base sur la requête publiée. Si j'ai bien compris l'idée est d'afficher toutes les informations : donc sur chaque liqne de résultat tu veux
informations client - informations maconneire - information plomberie...

Si c'est bien le cas, ta requête devrait ressembler à quelque chose comme cela :

SELECT C.*, M.*, P.*

FROM table_client C ,table_maconnerie M ,table_plomberie P...

WHERE C.code_cli M.code_cli and C.code_cli P.code_cli
and ...

ORDER BY nom_cli ASC

++

Zlub
0
Eros2007 Messages postés 36 Date d'inscription mardi 5 septembre 2006 Statut Membre Dernière intervention 16 avril 2023
29 sept. 2010 à 11:28
Bonjour!Merci beaucoups pour votre Réponse, c'est exactement ce que je veut avoir comme resultat donc je vais voir ce que cela va me donner avec votre proposition et je vous tiendrez au courant.
Merci Zlub
0
Eros2007 Messages postés 36 Date d'inscription mardi 5 septembre 2006 Statut Membre Dernière intervention 16 avril 2023
2 oct. 2010 à 00:37
Salut,
comme je l'ai deja expliquer,mes (6)tables sont reliées en maitre detail avec la table1(maitre).
donc si une des (6) tables (exemple table3) ne reçoit aucun enregistrement (cette table3 ne peut pas fournir le resultat rechercher "table3.code_cli" pour cela je voit que cette condition:
table1.code_cli=table2.code_cli and
table1.code_cli=table3.code_cli avec le and nous oblige à avoir tout les code_cli de toutes les tables ,alors si une des tables ne reçoit pas d'enregistrement on ne peut pas avoir ce code_cli,et donc la condition ne se verifiera pas et il ny aura pas de bon resultat.
j'ai essayer la même condition mais pas avec and plutôt avec OR,mais sont resultats ;
je voudrait avoir comme resultat par exemple un client :
client N°01:
tarvaux plomberie:02
travaux maçonnerie:00
travaux menuiserie:05
les 06 tables sont independantes entres elles ,mais elles sont reliées en maitre détail avec la table1 table client
voila j'espere que j'été un peut clair dans mon explication ,et je ne vous remercie jamais assez,pour ce que vous faite pour m'eclairer de votre savoir et votre experience.
0
Rejoignez-nous