|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Futur Membre du Club
![]() Inscription : décembre 2010 Messages : 125 ![]() |
Bonjour, je cherche depuis 1 heure quelque chose de très simple, mais en vain..
Avec une requête (qui contient plusieurs étapes), j'obtiens ces résultats : Code :
Mais je n'y arrive pas : Code :
|
||||
|
|
00
|
|
|
#2 | ||
![]() ![]() Alexandre ChemlaConsultant en Business Intelligence Inscription : février 2006 Messages : 1 771 ![]() |
Essayez comme cela :
Code :
|
||
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : décembre 2010 Messages : 125 ![]() |
Etonnant que cela soit aussi 'compliqué' pour faire si peu..
Donc, merci Jinroh. Ca fonctionne EDIT : ca ne fonctionne pas.. je reviendrai plus tard avec mon exemple plus complet.. sorry Maintenant, j'aimerai utiliser ceci pour des reqûetes plus importantes. Pourrais-tu m'expliquer le fonctionnement du WITH ? Ou me référer un tuto ? Merci d'avance. |
|
|
01
|
|
|
#4 | ||
![]() ![]() Alexandre ChemlaConsultant en Business Intelligence Inscription : février 2006 Messages : 1 771 ![]() |
On peut faire plus simple avec ce genre de chose :
Code :
Le tout est qu'il faut tout de même parcourir la table pour trouver le MIN de toutes les valeurs. Pour le WITH, les Common Table Expression en fait tu trouveras des explications et exemples ici. |
||
|
|
00
|
|
|
#5 | ||||||
|
Futur Membre du Club
![]() Inscription : décembre 2010 Messages : 125 ![]() |
Je reviens avec mon problème (un rien) plus complexe.
Voici mon input: Code :
Code :
Code :
Merci d'avance |
||||||
|
|
00
|
|
|
#6 | ||
![]() ![]() |
Essayez ainsi :
Code :
__________________
Email : http://scr.im/waldar |
||
|
00
|
|
|
#7 |
![]() ![]() Alexandre ChemlaConsultant en Business Intelligence Inscription : février 2006 Messages : 1 771 ![]() |
Plutôt que de donner simplement l'output, essayez de l'expliquer avec vos tables et données réelles.
|
|
|
00
|
|
|
#8 | ||||||
|
Futur Membre du Club
![]() Inscription : décembre 2010 Messages : 125 ![]() |
Voici mon code
Code :
Code :
et l'output que j'aimerai : Code :
Pour info, la condition "a.E_ACCT_NUM = '4563970000306006" n'est présente que pour alleger mon exemple. Normalement, je souhaite le faire pour tous les comptes de ma table. (Donc, une ligne pour chaque compte). JE vous remercie pour votre aide précieuse. |
||||||
|
|
00
|
|
|
#9 | ||
![]() ![]() |
Même méthode que plus haut :
Code :
__________________
Email : http://scr.im/waldar |
||
|
00
|
|
|
#10 | ||||||
|
Futur Membre du Club
![]() Inscription : décembre 2010 Messages : 125 ![]() |
Waldar (et autres),
j'ai maintenant utilisé ton code. Celui ci fonctionne nickel. Je souhaite poursuivre ma requête comme suit : Code :
Je souhaite refaire exactement la même chose que mon premier with, c'est-a-dire ne garder toujours qu'une seule ligne par compte, mais avec le minimum de la premiere date (ok avec le premier with) ET avec le minimum de la deuxieme DATE (??). Je n'ai pas encore réussi. Si vous pouviez m'éclairer pour imbriquer un deuxième WITH dans un premier. Merci d'avance Voici ce que j'ai rajouté pour l'instant : Code :
Code :
|
||||||
|
|
00
|
|
|
#11 | ||
![]() ![]() |
Pour mettre un deuxième WITH, il faut juste utiliser une virgule :
Code :
__________________
Email : http://scr.im/waldar |
||
|
00
|
|
|
#12 | ||||
|
Futur Membre du Club
![]() Inscription : décembre 2010 Messages : 125 ![]() |
Ce la fonctionne pas.
J'ai un message d'erreur au niveau de la virgule qui sépare les 2 Requests Code :
Code :
|
||||
|
|
00
|
|
|
#13 |
![]() ![]() |
Vous avez mis un alias de table dans le nom des colonnes retournée par la seconde CTE :
Code :
, SR2 (a.E_LOCATION_CODE, a.E_ACCT_NUM, a.TdProdDate, a.E_SERVICE_TYPE, b.TdProdDate, b.E_SERVICE_TYPE, RN2) AS Code :
, SR2 (E_LOCATION_CODE, E_ACCT_NUM, TdProdDate_1, E_SERVICE_TYPE_1, TdProdDate_2, E_SERVICE_TYPE_2, RN2) AS
__________________
Email : http://scr.im/waldar |
|
00
|
Copyright © 2000-2012 - www.developpez.com