Bonjour Merci d'avance pour votre aide. Je le tableau suivant:Groupe TSQL par deux colonnes
create table temp_vol (symbol nchar(10), dseqkey int, volume float)
voici quelques valeurs du tableau:
symbol dseqkey volume (no commas in the actual values)
C 20672 422,764,512
F 20672 47,144,600
F 20671 51,695,000
C 20671 371,950,496
F 20670 48,680,600
C 20670 654,208,512
C 20669 626,121,600
F 20669 93,489,504
C 20668 712,674,304
La sortie que je suis à la recherche est un dseqkey-1 2 jours moyenne mobile simple ((volume dseqkey + le volume)/2) pour chaque symbole, pour chaque dseqkey. Je peux obtenir la moyenne mobile fonctionnant pour tous les symboles à travers un dseqkey. Je peux obtenir la moyenne mobile fonctionnant pour tous les dseqkeys à travers 1 symbole. Je n'arrive pas à faire travailler les deux ensemble.
@ user590822: L'exemple SQL utilise maintenant une moyenne mobile de 3 jours, vous pouvez l'étendre à 30 en changeant 'cur.rn-2' à' cur.rn - 29' – Andomar
Cette partie de la description suggère que Les valeurs de 'dseqkey' sont garanties sans avoir de trous:' une moyenne mobile simple de 2 jours ((volume dseqkey + volume dseqkey-1)/2) '. Dans ce cas, la solution d'Andomar peut être utilisée sans CTE + ROW_NUMBER() '. Après avoir supprimé la section 'WITH', je crois que' numbered' devrait être remplacé par 'temp_vol', et' rn' par 'dseqkey'. –