Requette SQL Jointer deux tables access delphi

delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013 - 30 oct. 2011 à 10:56
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013 - 27 nov. 2011 à 00:10
bonjour tout le monde
et merci d’avance de ton aide
voile mon problème
j'ai 2 table Access vente et règlement

1/ Table vente
cod_cli dat_vente mt_vent
0007 01/01/2011 10 000,00
0007 22/03/2011 5 000,00
.....
2/ Table reglement
cod_cli dat_reg mt_reg
0007 05/01/2011 9 000,00
0007 22/03/20011 6 000,00
....

ma question es que en peut voire cette résultat avec requtte SQL

3/ Table resultet
dat_resulta cod_cli mt_vent mt_reg solde
01/01/2011 0007 10 000,OO 10 000,00
05/01/2011 0007 9 000,00 1 000,00
22/03/2011 0007 5 000,00 6 000,00
22/03/2011 0007 6 000,00 0,00
....

Merci encore

z

15 réponses

delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
30 oct. 2011 à 11:10
bonjour tout le monde
et merci d’avance de ton aide
voile mon problème
j'ai 2 table Access vente et règlement

1/ Table vente
cod_cli...dat_vente....mt_vent
0007......01/01/2011...10 000,00
0007......22/03/2011....5 000,00
.....
2/ Table reglement
cod_cli...dat_reg.......mt_reg
0007......05/01/2011....9 000,00
0007......22/03/20011...6 000,00
....

ma question es que en peut voire cette résultat avec requtte SQL

3/ Table resultet
dat_resulta....cod_cli...mt_vent......mt_reg.........solde
01/01/2011.....0007......10 000,00...................10 000,00
05/01/2011.....0007...................9 000,00........1 000,00
22/03/2011.....0007.......5 000,00....................6 000,00
22/03/2011.....0007...................6 000,00............0,00
....

Merci encore


z
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
2 nov. 2011 à 20:07
bonjour
je pence que cette requette et tré difficile !!!!????

j’attende des réponse svp...





z
0
Utilisateur anonyme
3 nov. 2011 à 16:34
Ben c'est surtout ca

merci d'avance de ton aide


Je suis pas sur que le moteur de CS te réponde tout seul : Enfin tu peux tjs essayer .

je pence que cette requette et tré difficile


Non mais on fera pas tes recherches pour toi. Donc montre nous ce que tu as fais (le bout de code que tu as réalisé)
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
4 nov. 2011 à 14:37
SALUT francky23012301
ben jai pas besoin de ton aide avec bq de commentaire.
je connue que le moteur ne répond pas a mes question tout seul

se problème est vrai
ma solution et de crée un 3eme table et rempli les vente et les reglement
avec la 1er requette (select * from vente where cod_cli="0007")
et la 2eme Requette (select * from reglement where cod_cli="0007")
mes j'ai essai de trouvi une requette qui faire tout ;

z
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
4 nov. 2011 à 15:40
ben jai pas besoin de ton aide avec bq de commentaire.


Tu trouves qu'il y a trop de commentaires ?

Bon j'en ferais moins dans une autre vie

je connue que le moteur ne répond pas a mes question tout seul
Oh tu sais les voix de Dieu sont parfois impénétrables

j'ai essai de trouvi une requette qui faire tout


Ben écoute : cherche encore mon grand. Rome ne s'est pas fait en un jour.
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
4 nov. 2011 à 22:42
laisse moi tranquille svp
laisse moi construire Rome moi seul mon grand

z
0
jderf Messages postés 189 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 2 octobre 2014 1
7 nov. 2011 à 15:13
Bjr delyes,

Cette réquete est simple et tu trouvera une quantité d'exemple sur le net. Pour te mettre sur la piste ceci c'est une "jointure" en deux tables.

Jean
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
8 nov. 2011 à 19:09
¨salut jean
merci de ton message
regarder bien la table résultat
il y un champ collectif dat_resultat (dat_vent + dat_reg)
et un champ calculer solde que reporter le solde de la linge avance
(solde = solde + mt_vent - mt_reg)
tellement j'ai fait bq des recherche sur cette requête j'ai saturé et bloqué
j'ai essai bq de méthode sa marche pas
tt jour les résultats son pas juste
es que vous avez des lien de cette requête ??????
merci jean


z
0
jderf Messages postés 189 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 2 octobre 2014 1
10 nov. 2011 à 10:43
Bjr Delyes,

j'ai pas tester, mais tu doit pouvoir faire un truc dans ce style

SELECT cod_cli, IFNULL(date_vente, reg.date_reg) as date_resulta, mt_vent, , reg.mt_reg, SUM(mt_vent)-SUM(reg.mt_reg) as solde
FROM tabel_vente
LEFT JOIN table_reg reg
ON cod_cli = reg.cod_cli

Rechercher dans l'aide du SGBD, tu as des quantités de fonction pour traiter les dates et les opérations sur les champs. Pour le reste c'est une simple jointure.

Jean
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
14 nov. 2011 à 20:31
SALUT jean
merci pour tés effort.
j'ai essai ton requête mes sa marche pas
et je suit en train de testé d'autre requête
lorsque je réussi je pose la réponse

merci encore


z
0
jderf Messages postés 189 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 2 octobre 2014 1
15 nov. 2011 à 13:46
Bjr,

Effectivement, y'avait une erreur de syntaxe dans ma requete et en plus j'avais pas bien regardé ta demande.
Je te propose cette requète :

SELECT *, ifnull(-mt_vent, mt_reg) as solde from
(SELECT dat_vente as dat_resulta, cod_cli, mt_vent, null as mt_reg
FROM vente
UNION
SELECT dat_reg as dat_resulta, cod_cli, null as mt1, mt_reg
FROM reglement reg) tab1
order by dat_resulta;

Elle donne ce résultat :

dat_resulta cod_cli mt_vent mt_reg solde
01/01/2011, 0007, 10 000, , -10000
05/01/2011, 0007, , 9 000, 9000
22/03/2011, 0007, 5 000, , -5000
22/03/2011, 0007, , 6 000, 6000


Il te faudra ensuite faire un traitement avec delphi des lignes retournées par la requete pour obtenir le solde date par date.

Jean
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
15 nov. 2011 à 22:50
salut jean
ifnull n'existe pas sous access isnull normalement

mes tt jrs meme probleme

ta pas oublier group by ????

quelle SGBD utilisé ton exemple ?

merci bq


z
0
jderf Messages postés 189 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 2 octobre 2014 1
16 nov. 2011 à 13:55
Bjr delyes,

Je suis sur mysql. Sur Mysql il existe "IFNULL" et "IS NULL" qui ne sont pas identique !
Je ne connais pas assez Access, pour te donner l'équivalent de IFNULL, voici la doc sur la fonction, à toi de voir comment faire l'équivalent sur Access :
Doc mysql sur IFNULL

Suivant si tu veux une réponse pour un cod_cli ou pour tous, tu géres un close "where" ou un "group by" (pour faire le test, j'ai saisi que tes quatres lignes d'exemple, donc je me suis pas embété avec ça).

Bon courage.
Jean
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
16 nov. 2011 à 21:07
SALUT jean
d'abord merci
pour moi le plus imoportant si que le champ solde est c'il ya une solution SQL
pour recupiré le resultet N-1

c'est a dire
(solde = (solde-1)+vente - reglement)
(7000=(8000+2000-3000))
VENTE.....REGLE....=SOLDE
10000......2000.....=8000
2000......3000.....=7000

et merci pour le doc mysql

z
0
delyes Messages postés 39 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 19 janvier 2013
27 nov. 2011 à 00:10
SALUT TT LE MONDE
J"ATTEND TT JOURS DES REPENSES A MA QUESTION

MERCI

z
0