OVH Cloud OVH Cloud

Requete de calcul sur deux enregistrements

1 réponse
Avatar
séb
Bonjour à tous

Je vous expose mon problème :
Je dois effectuer une requête me permettant de récupérer un ratio :

MA table "table1" :

LB1 LB2 SOLDE INDIC 2002 2003
2004

PAP PULL SOLDE PRIX 39,88 45,11
38,76
PAP PULL HORS SOLDE PRIX 55,76 54,49 59,52
...
Il y a plusieurs "couples" de Lb1 et Lb2 dans ma table, avec à chaque fois
un enregistrement me donnant les prix en solde et l'autre les prix hors
solde

En fait je voudrais une requête qui me calcule cette formule (prix en
soldes - prix hors solde) / prix hors soldes X 100. C'est à dire qu'elle
doit (dans l'exemple précédent) me renvoyer une seule ligne.

LB1 LB2 2002 2003 2004

PAP PULL -39.81 -17.21 -34.87


Je ne sais pas si je suis suffisamment clair...


Merci d'avance je suis complétement paumé là...

Séb

1 réponse

Avatar
Rv
Salut,

Une première approche à affiner:

SELECT Table1.lb1, Table1.lb2,
([Table1].[2002]-[Table1_1].[2002])/[Table1_1].[2002]*100,
([Table1].[2003]-[Table1_1].[2003])/[Table1_1].[2003]*100
FROM Table1
INNER JOIN Table1 AS Table1_1 ON (Table1.lb2 = Table1_1.lb2) AND (Table1.lb1
= Table1_1.lb1)
WHERE Table1.Solde="SOLDE" AND Table1_1.Solde="HORS SOLDE"


J'ai testé sur le jeu de donnée fourni. Il peut y avoir des pb de
valeurs à zéro, à Null, des enregistrements qui ne sortiront pas s'il
n'existe pas d'enregistrement pour le prix en solde ou hors solde
Je ne connais pas la clé primaire de la table , j'ai donc effectué la
jointure sur les champs lb1 et lb2. Peut être des problèmes de doublons.
La clause WHERE avec les libellés SOLDE et HORS SOLDE peut poser des
problèmes si ces champs sont mal saisis.



A+

Rv


"séb" a écrit dans le message de
news:%
Bonjour à tous

Je vous expose mon problème :
Je dois effectuer une requête me permettant de récupérer un ratio :

MA table "table1" :

LB1 LB2 SOLDE INDIC 2002 2003
2004

PAP PULL SOLDE PRIX 39,88 45,11
38,76
PAP PULL HORS SOLDE PRIX 55,76 54,49 59,52
...
Il y a plusieurs "couples" de Lb1 et Lb2 dans ma table, avec à chaque fois
un enregistrement me donnant les prix en solde et l'autre les prix hors
solde

En fait je voudrais une requête qui me calcule cette formule (prix en
soldes - prix hors solde) / prix hors soldes X 100. C'est à dire qu'elle
doit (dans l'exemple précédent) me renvoyer une seule ligne.

LB1 LB2 2002 2003 2004

PAP PULL -39.81 -17.21 -34.87


Je ne sais pas si je suis suffisamment clair...


Merci d'avance je suis complétement paumé là...

Séb