Sql faire la différence entre deux lignes et deux collonnes.

Résolu
sebaur -  
 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.
A voir également:

2 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
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,
1
Sebaur
 
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
0
NHenry Messages postés 15219 Date d'inscription   Statut Modérateur Dernière intervention   365 > Sebaur
 
SELECT Champ1-Champ2 AS Resultat FROM MaTable ORDER BY Resultat ASC

Normalement.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > NHenry Messages postés 15219 Date d'inscription   Statut Modérateur Dernière intervention  
 
pour des exercices, je pense préférable de ne pas proposer de solutions, cela empêche d'apprendre.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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/

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
en quoi penses-tu que ma suggestion ne s'applique pas à la comparaison entre deux lignes successives?
0
Sebaur
 
Merci beaucoup pour vos réponses , j ai réussi à trouver une solution finale.
0
Big > Sebaur
 
la solution?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
la suggestion s'applique à un cas beaucoup plus simple, sans trou entre les dates.
0