No PostgreSQL, a
scale() função retorna a escala de seu argumento. A escala é o número de dígitos decimais na parte fracionária.
Sintaxe
A sintaxe fica assim:
scale(numeric) Onde
numeric é o número para o qual você deseja que a escala seja retornada. Exemplo
Aqui está um exemplo de como funciona.
SELECT scale(0.1234); Resultado:
4
Aqui estão mais alguns.
SELECT
scale(0) AS "0",
scale(0.1) AS "0.1",
scale(0.12) AS "0.12",
scale(0.123456789) AS "0.123456789"; Resultado:
0 | 0.1 | 0.12 | 0.123456789 ---+-----+------+------------- 0 | 1 | 2 | 9
Números negativos
Funciona em números negativos da mesma forma.
SELECT
scale(0) AS "0",
scale(-0.1) AS "-0.1",
scale(-0.12) AS "-0.12",
scale(-0.123456789) AS "-0.123456789"; Resultado:
0 | -0.1 | -0.12 | -0.123456789 ---+------+-------+-------------- 0 | 1 | 2 | 9
Expressões
Você também pode fornecer expressões, como as seguintes.
SELECT
1.23 * 0.3 AS "Result of expression",
scale(1.23 * 0.3); Resultado:
Result of expression | scale ----------------------+------- 0.369 | 3