Bucket_script使用時に小数点以下切り上げ

bucket_script使用時に小数点以下切り上げもしくは四捨五入した結果を取得したいのですが、ご存知の方いましたら教えていただきたいです。

"bucket_script": {
	"buckets_path": {
		"var1": "_count"
	},
	"script": "params.var1 / 30"
}

こんにちわ

四捨五入であれば、以下のように書くと良いです。

"bucket_script": {
	"buckets_path": {
		"var1": "_count"
	},
	"script": "Math.round(params.var1 / 30)"
}

四捨五入だけでなく、切り上げ(ceil)や切り捨て(floor)もMath関数の中に用意されているので、それらを利用することができます。
どんなAPIがあるかは、以下をご参照ください。

https://www.elastic.co/guide/en/elasticsearch/painless/current/painless-api-reference-shared-java-lang.html#painless-api-reference-shared-Math

ご参考になりましたら幸いです。

アドバイスありがとうございます。
Math.ceilで切り上げでの値取得できました。

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.