Tipo DOUBLE

Aplica-se a: Marque Sim Databricks SQL Marque Sim 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