J'ai ci-dessous le tableau avec les colonnes Position_Date, Deal_Nr et Market Value. Maintenant, je veux créer une quatrième colonne qui calcule le Delta de la valeur marchande entre 2 jours sur chaque Deal. Par exemple Deal nr 100, MV 14/9 = 500. MV 13/9 = 600. 500-600 = -100 ...Exécution de la valeur Delta sur des lignes isolées - SQL Server 2008
Je sais comment procéder si je somme et groupe à la date de position mais y a-t-il un moyen de calculer le delta isolé sur chaque transaction sans faire de cas et en mettant deal_nr comme condition? J'ai comme deal_nr 100 différent et de nouvelles offres viendront alors je veux que la requête soit statique.
Position_date |Deal_Nr| Market Value | Delta Market Value
2016-09-14 | 100 | 500 | -100
2016-09-14 | 101 | 1000 | 200
2016-09-14 | 102 | 120 | -30
2016-09-14 | 103 | 400 | -40
2016-09-13 | 100 | 600 | -300
2016-09-13 | 101 | 800 | 100
2016-09-13 | 102 | 150 | -150
2016-09-13 | 103 | 440 | 240
2016-09-12 | 100 | 900 | N/A
2016-09-12 | 101 | 700 | N/A
2016-09-12 | 102 | 300 | N/A
2016-09-12 | 103 | 200 | N/A
Si je devais calculer le delta agrégé, groupé sur la date de position, les travaux suivants.
Select
Position_date,
Market_Value,
Delta_MV = sum(Market_value) - (select sum(Market_value) from t1
where position_Date = a.position_date -1
Group by position_date)
from t1 as a
Group by position_date
Pourriez-vous s'il vous plaît écrire votre résultat attendu. Je veux dire ce que vous voulez montrer –