Presto数学関数の紹介
Prestoの数学関数についてご紹介します。

数学関数では数値型の処理を行うための関数になり、他の言語でも提供されているため、馴染みのある関数が多いと思います。
数学関数ではオイラー数であったり、ラジアル等の高校数学以上で習うような関数も提供していますが、まずは初歩的な関数のみご紹介してきます。
数学関数一覧
凡例
下記一覧で利用している変数などをここに記載します。
変数一覧
col
・・・ カラム名、固定値(数値,浮動小数点型){int}
・・・ 固定値(数値,浮動小数点型) ※任意引数になります。dbl
・・・ カラム名(浮動小数点型)
関数一覧
No | 関数 | 説明 |
1 | round(col, {int}) | col で入れた数値をint の場所で四捨五入し、結果を返却します。 int の値が正の整数だと小数点の四捨五入で負の整数は整数部分の四捨五入になります。 intは任意引数のため、入れないと整数で 四捨五入されます。 rand()がエイリアスになっており、 同様の処理ができます。 返却値:入力した型と同じ |
2 | ceiling(col) | col で入れた数値を最も近い整数に切り上げて返します。 ceil()がエイリアスになっており、 同様の処理ができます。 返却値:入力した型と同じ |
3 | floor(col) | col で入れた数値を最も近い整数に切り捨てて返します。 返却値:入力した型と同じ |
4 | truncate(col) | col で入れた数値を最も近い整数に切り捨てて返します。 floorとの違いは負数の場合、floorは 最大値を返却します。 例) col=-1.122321 floor → -2 truncate → -1 返却値:double |
5 | random({int}) | 何も引数を入れない場合、 0.0 <= x <1.0の範囲で疑似乱数を返します。 {int} に引数をいれた場合、0からintの中での乱数生成します。 返却値:入力した型と同じ |
6 | mod(col1, col2) | 剰余演算(%)と同様にcol1をcol2で割ったあとの 余りを返します。 返却値:入力した型と同じ |
7 | abs(col) | col の絶対値を返します。返却値:入力した型と同じ |
備考
挙動については細かい部分で不足な点があると思いますが、固定値でどんな挙動をするか、確認する手助けに本記事がなれば嬉しいと思います。
参照元
https://prestodb.io/docs/0.172/functions/aggregate.html