プライマリ・コンテンツに移動
Oracle® Big Data Discovery Cloud Service EQLリファレンス

E65371-04
目次へ
目次
索引へ移動
索引

前
次
機械翻訳について

累計

累積(累積)合計の計算は、保証シナリオで役立ちます。

/* This selects the total sales in the 12 most recent months. */
DEFINE Input AS 
SELECT
   DimDate_CalendarYear AS CalYear,
   DimDate_MonthNumberOfYear AS NumMonth,
   SUM(FactSales_SalesAmount) AS TotalSales
FROM SaleState
GROUP BY CalYear, NumMonth
ORDER BY CalYear DESC, NumMonth DESC
PAGE(0, 12);

RETURN CumulativeSum AS SELECT
   one.CalYear AS CalYear,
   one.NumMonth AS NumMonth,
   SUM(many.TotalSales) AS TotalSales
FROM Input one JOIN Input many
ON ((one.CalYear > many.CalYear) OR
     (one.CalYear = many.CalYear AND
      one.NumMonth >= many.NumMonth)
     )
GROUP BY CalYear, NumMonth
ORDER BY CalYear, NumMonth

例では、"1"と"many"は、この多対1の自己結合でロールを明確にするための文の別名です。 結合条件を確認すると、(1)レコードごとに、結合条件に一致する(複数の)値に基づいて複数のレコードを作成するものと考えることができます。