DECIMAL
نوع
ينطبق على: التحقق من Databricks SQL Databricks Runtime
يمثل الأرقام بأقصى دقة محددة ومقياس ثابت.
بناء الجمله
{ DECIMAL | DEC | NUMERIC } [ ( p [ , s ] ) ]
p
: الدقة القصوى الاختيارية (إجمالي عدد الأرقام) للرقم بين 1 و38. الافتراضي هو 10.
s
: مقياس اختياري للرقم بين 0 و p
. عدد الأرقام الموجودة على يمين الفاصلة العشرية. الافتراضي هو 0.
حدود
نطاق الأرقام:
- -1Ep + 1 إلى -1E-s
- 0
- +1E-s إلى +1Ep - 1
على سبيل المثال، يحتوي DECIMAL(5، 2) على نطاق من: -999.99 إلى 999.99.
الاحرف
decimal_digits { [ BD ] | [ exponent BD ] }
| digit [ ... ] [ exponent ] BD
decimal_digits:
[ + | - ] { digit [ ... ] . [ digit [ ... ] ]
| . digit [ ... ] }
exponent:
E [ + | - ] digit [ ... ]
digit
: أي رقم من 0 إلى 9.
postfix BD
و الأس E
غير حساسين لحالة الأحرف.
امثله
> 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)