Bonsoir à toutes et à tous,
J'ai un problème avec une requête SQL qui doit retourner un ratio obtenu ainsi : prix2005/prix2006 pour une céréale. Ma table contient plusieurs céréales ( codecéréale). J'aimerais obtenir une liste de ces ratios. Ma table possède 5 céréales, je devrais donc obtenir 5 enregistrements.
Voici ma requête SQL :
La première sous requête renvoie plusieurs enregistrements, la seconde aussi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select (SELECT PrixReversé FROM TREVERSION where Année ='2006')/(SELECT PrixReversé FROM TREVERSION where Année ='2005') from TREVERSION
La division de ces deux sous requêtes ne s'effectuent pas et j'obtient le message d'erreur suivant :
#1242 - Subquery returns more than 1 row
Pour que la requête m'affiche un résultat, je dois préciser le code de ma céréale :
Je suppose que dans le premier cas, "il" ne sait pas quel enregistrement de la première sous requête doit être divisé avec un des enregistrements de la seconde sous requête.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select (SELECT PrixReversé FROM TREVERSION where Année ='2006' and codecéréale='1')/(SELECT PrixReversé FROM TREVERSION where Année ='2005' and codecéréale='1') from TREVERSION
Or, je nécessite vraiment l'obtention d'une liste de ces ratios.
En l'attente de vos idées, je vous remercie par avance
NZs
Partager