やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

SQLite3コア関数 round

 浮動少数を丸めた数を返す。

成果物

情報源

構文

select round(浮動少数);
select round(浮動少数, 丸め桁数);
  • -9223372036854775808から+9223372036854775807までの擬似乱数整数を返す
  • 第2引数が省略されたら、第2引数は0とみなす

select round(1.23456789);
1.0
select round(1.23456789, 1);
1.2
select round(1.23456789, 2);
1.23
select round(1.23456789, 3);
1.235

select round(4.4);
4.0
select round(4.5);
5.0
select round(5.4);
5.0
select round(5.5);
6.0
  • 丸め方法: 四捨五入
  • 丸め桁数0: 整数部で丸める(少数部1桁目とそれ以降を0に丸める)

 細かくいうと以下。

  • 第2引数+1桁目が4以下なら、第2引数桁目までをそのままにする。以降は切り捨て
  • 第2引数+1桁目が5以上なら、第2引数桁目を+1する。以降は切り捨て

所感

 丸め方法は四捨五入以外にもたくさんある。

 丸め方法を指定できないのは残念。だが、DBMSの守備範囲外だろう。

対象環境

$ uname -a
Linux raspberrypi 4.19.42-v7+ #1218 SMP Tue May 14 00:48:17 BST 2019 armv7l GNU/Linux

前回まで