DECIMAL
tür
Şunlar için geçerlidir: Databricks SQL 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 p
arası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)