Aide sur Requête SQL dans base SQLITE
Bonjour,
Je voudrais implémenter un Calcul de Budget dans mon petit Programme
Je travaille sur DELPHI 10.4.1 et Sqlite comme base de données
J’ai une table : Details Cpt, Budgets_Dep et Budgets Recettes
Voici la structure de mes 3 Tables :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| CREATE TABLE DetailsCpt (
IdDetails INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
IdCpt INTEGER NULL,
DateEnregistre DATE NOT NULL,
Types VARCHAR(50) NOT NULL,
NumChq VARCHAR(7) NULL,
Tiers VARCHAR(80) NOT NULL,
Categories VARCHAR(50) NOT NULL,
Debit NUMERIC(7,2) NULL DEFAULT 0,
Credit NUMERIC(7,2) NULL DEFAULT 0,
CONSTRAINT Comptes_DetailsCpt FOREIGN KEY (IdCpt) REFERENCES Comptes (IdCpt) ON DELETE RESTRICT ON UPDATE RESTRICT
);
CREATE TABLE [Budgets_Depenses] (
IdBudgetD INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
DteDebut DATE NULL,
DteFin DATE NULL,
Categories VARCHAR(50) NOT NULL,
Periodicite VARCHAR(50) NOT NULL,
MontDepenses NUMERIC(7,2) NULL,
IdDetail INTEGER NULL
);
CREATE TABLE Budgets_Recettes (
IdBudgetR INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
DteDebut DATE NULL,
DteFin DATE NULL,
Categories VARCHAR(50) NOT NULL,
Periodicite VARCHAR(50) NOT NULL,
MontRecettes NUMERIC(7,2) NOT NULL DEFAULT 0.00,
IdDetail INTEGER NULL
); |
Dans mes 3 tables j’ai un Champ Categories que je voudrais exploiter
Mon but serait d’obtenir :
A partir de la table DetailsCpt pouvoir comparer chaque catégories (dont je fais le regroupement) à la catégorie des Dépenses et Recettes Budgétées et en calculer l’écart.
Exemple :
Categories Bugétée Réel Ecart
Santé 250.00 300,00 +100
Voici la requête SQL que j’utilise :
Code:
1 2 3 4 5
| SELECT U.Categories FROM DetailsCpt AS U
INNER JOIN Budgets_Recettes AS R
ON U.Categories = R.Categories
INNER JOIN Budgets_Depenses AS D
ON U.Categories = D.Categories |
Je ne maitrise pas les jointures, et j’ai besoin de votre aide précieuse.
Par avance Merci
Correction de la requette
Une petite correction , en fait voici la requête utilisée réelement
Code:
1 2 3 4 5 6 7
| SELECT U.Categories , Sum(Debit) AS Depenses ,Sum(Credit) As Recettes, R.Categories ,D.categoriesv FROM DetailsCpt AS U
INNER JOIN Budgets_Recettes AS R
ON U.Categories = R.Categories
INNER JOIN Budgets_Depenses AS D
ON U.Categories = D.Categories
GROUP By Categories
ORDER BY DateEnregistre Asc |