Bonjour 8)
Je travaille avec sql server 2000.
J'ai une table contenant des enregistrements, chaque ligne définissant une semaine et une année précise. Je vous montre un exemple de données :
Voici ce que je voudrais comme résultat dans une autre table :prix semaine annee
--------------------- ------- -----
5.0000 17 2001
5.0000 18 2001
5.0000 19 2001
5.1500 20 2001
5.1500 21 2001
5.1500 22 2001
5.1500 23 2001
5.1500 24 2001
5.1500 25 2001
5.1500 26 2001
5.1500 27 2001
5.0000 28 2001
5.0000 29 2001
5.0000 30 2001
Je n'y arrive pas! La requête que j'ai présentement utilise les min et les max des numéros de semaines par prix...prix --- semaine debut --- semaine fin --- annee debut --- annee fin
5.00 --- 17 --- 19 --- 2001 --- 2001
5.15 --- 20 --- 27 --- 2001 --- 2001
5.00 --- 28 --- 30 --- 2001 --- 2001
Mais dans le cas présent, ça me retourne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 drop table ListePRixCometFinale select listeprix, codeitem, prix, devise, b.datedebut, c.datefin into ListePrixCometFinale from ( select listeprix, codeitem, prix, devise, annee, min(semaine) as minsem, max(semaine) as maxsem from listeprixcometsem group by listeprix, codeitem, prix, devise, annee ) a join jassdate b on (a.minsem = b.semaine and a.annee = b.annee) join jassdate c on (a.maxsem = c.semaine and a.annee = c.annee) order by 1,2,5
Le prix a 5$ est erroné, puisque de la semaine 20 à 27 ce n'est pas à ce prix là du tout!prix --- semaine debut --- semaine fin --- annee debut --- annee fin
5.00 --- 17 --- 30 --- 2001 --- 2001
5.15 --- 20 --- 27 --- 2001 --- 2001
Merci de ne donner votre avis ce sera apprécié. Je me demande bien comment je pourrais la faire celle là! :
Partager