Si j'ai une table de 3 colonnes:
- commandeID
- commandeDate
- stockLocation
Exemple:
commandeID -- commandeDate -- stockLocation
commande1 -- 12/12/2009 -- A1
commande5 -- 11/11/2009 -- B10
commande4 -- 19/12/2009 -- B11
commande1 -- 13/10/2010 -- Z12
commande5 -- 14/11/2010 -- Z13
commande1 -- 11/10/2010 -- A1
Je veux partitionner la table dans le but d'obtenir un tel résultat:
Rownum -- commandeID -- commandeDate -- stockLocation
1 -- commande1 -- 12/12/2009 -- A1
1 -- commande1 -- 11/10/2010 -- A1
1 -- commande1 -- 13/10/2010 -- Z12
2 -- commande4 -- 19/12/2009 -- B11
3 -- commande5 -- 11/11/2009 -- B10
3 -- commande5 -- 14/11/2010 -- Z13
Quelle syntaxe dois-je utiliser pour repartir ces commandes en 3 partitions selon la commandeID et de les ordonner suivant: commandeID, commandeDate, et stockLocation. Je veux avoir le ROWNUM de cette façon.
Mon probleme est qu'en utilisant:
ROW_NUMBER() OVER(PARTITION BY commandeID ORDERBY commandeID,
commandeDate, stockLocation)
le ROWNUM est retournée de cette façon:
Rownum -- commandeID -- commandeDate -- stockLocation
1 -- commande1 -- 12/12/2009 -- A1
2 -- commande1 -- 11/10/2010 -- A1
3 -- commande1 -- 13/10/2010 -- Z12
1 -- commande4 -- 19/12/2009 -- B11
1 -- commande5 -- 11/11/2009 -- B10
2 -- commande5 -- 14/11/2010 -- Z13
Partager