カラム同士を足し算する関数のSUMはあるんですが、掛け算する関数はMySQLには無いんですよね。Excelならば、PRODUCT関数に相当するものです。

それでも使う必要が生じまして、ネットで色々調べたのの、中々ビンゴの情報が出て来なかったのでメモしておきます。

 

テーブルの作成

まずは、このSQLを実行して、テーブルを作成して下さい。

こんなテーブルが作成されると思います。日付の順番を替えているのはわざとです。

累計の計算

まずはこのテーブルについて、1月から順に累計を求めてみます。累計を求めるSQLは以下の通りです。

キチンと日付順に累積が求められました。この累計については、まだよく見るアルゴリズムです。

累積(カラム同士の掛け算)の計算

カラム同士の足し算は、累計で良いんですが、掛け算は、何て言うのでしょう?累積では無いような?分かる方は教えて下さい。

さて、SQLは以下の通りです。小数点第2位以下切り捨てにしています。

参考:TRUNCATE

無事にカラム同士の掛け算が出来ました。

の部分については、私も分かっていません。掛け算を、SUMを使って可能にするおまじない、位に考えて下さい。笑