如何在 PostgreSQL 中限制浮点数

Uly*_* BN 3 sql postgresql postgresql-10

我有一个数字 1.00000001,我想将其限制在 -1 和 1 之间,以避免函数上出现输入超出范围错误ACOS()。MCVE 看起来像这样:

SELECT ACOS( 1 + 0.0000000001 );
Run Code Online (Sandbox Code Playgroud)

我的理想是这样的:

SELECT ACOS( CLAMP(1 + 0.0000000001, -1, 1) );  
Run Code Online (Sandbox Code Playgroud)

Uly*_* BN 7

我找到的解决方案是:

SELECT ACOS(GREATEST(-1, LEAST(1, 1 + 0.0000000001));
Run Code Online (Sandbox Code Playgroud)