Sql faire la différence entre deux lignes et deux collonnes. [Résolu]

Signaler
-
 Big -
Bonjour,
j'ai un projet en informatique et je suis bloqué à une étape de celui-ci.
La question à laquelle je dois répondre est la suivante : "Chercher pour chaque ticker la plus grande différence (close price (J-1)/open price (J)) entre deux jours successifs".
Cependant je ne vois vraiment pas comment je pourrai identifier un élement d'une ligne respective et collonne respective.
Je suis vraiment novice donc si vous pouviez m'expliquer votre réflexion dans le but de la comprendre moi même et ne pas juste la copié-collé.

D'avance merci.

2 réponses

Messages postés
12613
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
14 octobre 2020
701
bonjour, il s'agit bien de faire une requête SQL sur une table SQL?
je découperais le problème en deux étapes:
- d'abord calculer toutes les différences
- ensuite chercher la plus grande

réfléchis-y,
Oui effectivement c est faire une requête SQL sur un tableau SQL .
Mon problème est que j arrive pas à faire la différence entre deux valeurs provenants de deux lignes et colonnes différentes

Okok merci pour le tips
Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020
256 > Sebaur
SELECT Champ1-Champ2 AS Resultat FROM MaTable ORDER BY Resultat ASC

Normalement.
Messages postés
12613
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
14 octobre 2020
701 >
Messages postés
14733
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 octobre 2020

pour des exercices, je pense préférable de ne pas proposer de solutions, cela empêche d'apprendre.
Messages postés
29743
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 octobre 2020
2 842
Bonjour,

A moins que ça ne soit moi qui aie mal compris la question... je pense, Yg et Nhenry que vous tapez à côté.

Son souci est de faire un traitement en comparant une ligne de la table à sa précédente.
pas juste une opération sur deux colonnes !

La réponse étant, le plus souvent, d'utiliser des jointures.

Comme tu n'as pas précisé sur quel SGBD tu bosses, ça compliques pour te donner LA réponse exacte...
Mais tu peux t'inspirer de ça :
https://www.mysqltutorial.org/mysql-tips/mysql-compare-calculate-difference-successive-rows/

Messages postés
12613
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
14 octobre 2020
701
en quoi penses-tu que ma suggestion ne s'applique pas à la comparaison entre deux lignes successives?
Merci beaucoup pour vos réponses , j ai réussi à trouver une solution finale.
> Sebaur
la solution?
Messages postés
12613
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
14 octobre 2020
701
la suggestion s'applique à un cas beaucoup plus simple, sans trou entre les dates.