Aracılığıyla paylaş


DECIMAL tür

Şunlar için geçerlidir: onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

Belirtilen en yüksek duyarlık ve sabit ölçekle sayıları temsil eder.

Sözdizimi

{ DECIMAL | DEC | NUMERIC } [ (  p [ , s ] ) ]

p: 1 ile 38 arasındaki sayının isteğe bağlı en yüksek duyarlığı (toplam basamak sayısı). Varsayılan değer 10'dur. s: Sayının 0 ile parasında isteğe bağlı ölçeği. Ondalık ayırıcının sağındaki basamak sayısı. Varsayılan değer 0’dır.

Sınırlar

Sayı aralığı:

  • -1Ep + 1 - -1E-s
  • 0
  • +1E-sn - +1Ep - 1

Örneğin, DECIMAL(5, 2) öğesinin aralığı: -999,99 ile 999,99 arasındadır.

Değişmez Değerler

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

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

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

digit: 0 ile 9 arası herhangi bir sayı.

Sonek BD ve üs E büyük/küçük harfe duyarsızdır.

Örnekler

> SELECT +1BD;
  1

> SELECT 5E3BD;
  5000

> SELECT 5.321E2BD;
  532.1

> SELECT -6.45
  -6.45

> SELECT typeof(6.45);
  DECIMAL(3,2)

> SELECT CAST(5.345 AS DECIMAL(3, 2));
  5.35

> SELECT typeof(CAST(5.345 AS DECIMAL));
  DECIMAL(10, 0)

> SELECT typeof(CAST(5.345 AS DECIMAL(2)));
  DECIMAL(2, 0)