TypeDOUBLE

S’applique à :case marquée oui Databricks SQL case marquée oui Databricks Runtime

Représente des nombres à virgule flottante double précision de huit octets.

Syntaxe

DOUBLE

limites

La plage de nombres est la suivante :

  • -∞ (infini négatif)
  • -79769x10 e + 308 à-2.225 E-307
  • 0
  • + 2.225 e-307 à + 79769x10 E + 308
  • +∞ (infini positif)
  • NaN (n’est pas un nombre)

Littéraux

decimal_digits  { D | exponent [ D ] }
| digit [ ... ] { exponent [ D ] | [ exponent ] D }

decimal_digits:
[ + | - ] { digit [ ... ] . [ digit [ ... ] ]
            | . digit [ ... ] }

exponent:
E [ + | - ] digit [ ... ]

digit : un chiffre compris entre 0 et 9.

Le suffixe D et l’exposant E ne respectent pas la casse.

Notes

DOUBLE est un type numérique en base 2. Lorsqu’il reçoit un littéral en base 10, la représentation peut ne pas être exacte. Utilisez le type DECIMAL pour représenter avec précision les nombres en base 10 fractionnaires ou élevés.

Exemples

> 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