Tipo DOUBLE
Aplica-se a: Databricks SQL Databricks Runtime
Representa números de ponto flutuante de precisão dupla de 8 bytes.
Sintaxe
DOUBLE
Limites
O intervalo de números é:
- -∞ (infinito negativo)
- -1,79769E+308 a -2,225E-307
- 0
- +2.225E-307 para +1.79769E+308
- +∞ (infinito positivo)
- NaN (não é um número)
Literais
decimal_digits { D | exponent [ D ] }
| digit [ ... ] { exponent [ D ] | [ exponent ] D }
decimal_digits:
[ + | - ] { digit [ ... ] . [ digit [ ... ] ]
| . digit [ ... ] }
exponent:
E [ + | - ] digit [ ... ]
digit
: Qualquer algarismo de 0 a 9.
O postfix e E
o D
expoente não diferenciam maiúsculas de minúsculas.
Notas
DOUBLE é um tipo numérico de base 2. Quando dado um literal que é base-10 a representação pode não ser exata. Use o tipo DECIMAL para representar com precisão números de base fracionários ou grandes de base 10.
Exemplos
> SELECT +1D;
1.0
> SELECT 5E10;
5E10
> SELECT 5.3E10;
5.3E10
> SELECT -.1D;
-0.1
> SELECT 2.D;
2.0
> SELECT -5555555555555555.1D
-5.555555555555555E15
> SELECT CAST(-6.1 AS DOUBLE)
-6.1