Calcul des totaux cumulés et des moyennes mobiles

Analyse de séries chronologiques dans SQL Server

Maham Faisal Khan

Senior Data Science Content Developer

Calcul des totaux cumulés

Équipe Match PointsMarqués
AZ 1 8
AZ 2 6
AZ 3 3
FLA 1 7
FLA 2 7
FLA 3 6
Équipe Match PointsMarqués TotalPoints
AZ 1 8 8
AZ 2 6 14
AZ 3 3 17
FLA 1 7 7
FLA 2 7 14
FLA 3 6 20
Analyse de séries chronologiques dans SQL Server

Totaux cumulés

SELECT
    s.Team,
    s.Game,
    s.RunsScored,
    SUM(s.RunsScored) OVER (
        PARTITION BY s.Team
        ORDER BY s.Game ASC
        RANGE BETWEEN
              UNBOUNDED PRECEDING
              AND CURRENT ROW
    ) AS TotalRuns
FROM #Scores s;
  • Colonnes Team, Game, RunsScored
  • SUM(s.RunsScored)
  • OVER()
  • PARTITION BY s.Team
  • ORDER BY s.Game ASC
  • RANGE BETWEEN
  • UNBOUNDED PRECEDING
  • AND CURRENT ROW
Analyse de séries chronologiques dans SQL Server

RANGE et ROWS

RANGE

  • Précise une plage de résultats
  • « Duplicatas » traités d'un seul coup
  • Ne prend en charge que UNBOUNDED et CURRENT ROW

ROWS

  • Précise le nombre de lignes à inclure
  • « Duplicatas » traités une ligne à la fois
  • Prend en charge UNBOUNDED, CURRENT ROW et un nombre de lignes
Analyse de séries chronologiques dans SQL Server

Calcul des moyennes mobiles

SELECT
    s.Team,
    s.Game,
    s.RunsScored,
    AVG(s.RunsScored) OVER (
        PARTITION BY s.Team
        ORDER BY s.Game ASC
        ROWS BETWEEN 1 PRECEDING
            AND CURRENT ROW
    ) AS AvgRuns
FROM #Scores s;
Équipe Match PointsMarqués MoyPoints
AZ 1 8 8
AZ 2 6 7
AZ 3 3 4
FLA 1 7 7
FLA 2 7 7
FLA 3 6 6
Analyse de séries chronologiques dans SQL Server

Passons à la pratique !

Analyse de séries chronologiques dans SQL Server

Preparing Video For Download...