2011-04-16 35 views

Trả lời

50

Độ chính xác là số chữ số có nghĩa. Oracle đảm bảo tính di động của các con số có độ chính xác từ 1 đến 38.

Quy mô là số chữ số bên phải (dương) hoặc trái (âm) của số thập phân . Tỷ lệ có thể dao động từ -84 đến 127.

Trong trường hợp của bạn, ID có độ chính xác 6 có nghĩa là nó sẽ không chấp nhận số có từ 7 chữ số có nghĩa trở lên.

tham khảo:

http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT1832

Trang đó cũng có một số ví dụ mà sẽ làm cho bạn hiểu chính xác và quy mô.

+1

có nghĩa là gỗ cuối cùng sẽ là 1000000? – user700792

+6

+1: Tôi nghĩ chìa khóa để hiểu điều này là hiểu định dạng số nội bộ - phần định trị và số mũ. Độ chính xác đặt một giới hạn về độ dài có thể của mantissa, và quy mô đặt một giới hạn về mức tối thiểu có thể của số mũ. –

+0

@DavidAldridge Tôi phản hồi bạn. Tôi nghĩ bạn nên xem xét việc đăng nó như một câu trả lời liên quan đến phần định trị và số mũ. Một số thực sự được lưu trữ ở định dạng độ dài thay đổi. –

130

chính xác 4, quy mô 2: 99,99

chính xác 10, quy mô 0: 9999999999

chính xác 8, quy mô 3: 99999,999

chính xác 5, quy mô -3: 99999000

+5

bạn có thể giải thích hành vi của các thang âm? – Geek

+1

trông giống như viên đạn/bỏ qua nhiều giá trị số nguyên còn lại của số thập phân – JDPeckham

+2

hãy nhớ rằng độ chính xác luôn bao gồm phần tỷ lệ. ví dụ: Độ chính xác 4, tỷ lệ 2 - sẽ không thành công bất kỳ số nào> 99,9999 ..; thử: chọn cast (99,999999 là NUMBER (4,2)) từ kép; //ĐƯỢC; chọn cast (100,9 là NUMBER (4,2)) từ kép; //THẤT BẠI; –

-5

Nếu giá trị là 9999.988 và Độ chính xác 4, tỷ lệ 2 thì có nghĩa là 9999 (độ chính xác) 0,99 (tỷ lệ là 2 .988 được làm tròn thành .99)

Nếu giá trị là 9 999.9887 và độ chính xác là 4, tỷ lệ là 2 thì có nghĩa là 9999.99

+6

Không, độ chính xác là số chữ số có nghĩa để lưu trữ. Trong cả hai trường hợp, độ chính xác được lưu trữ là 6 và thang đo là 2. –

39

Precision là tổng số chữ số. Quy mô là số chữ số sau dấu thập phân.

Ví dụ:
NUMBER (7,5): 12,12345
NUMBER (5,0): 12345

+10

Độ chính xác là tổng số chữ số, không phải là số ở bên trái dấu thập phân. –

+0

Và tỷ lệ là số chữ số bên phải (dương) hoặc trái (âm) của dấu thập phân, không chỉ sau dấu thập phân. –

20

lẽ rõ ràng hơn:

Lưu ý rằng độ chính xác là tổng số chữ số, quy mô bao gồm

NUMBER (chính xác, Scale)

chính xác 5, quy mô 3: 54,321

chính xác 5, tỷ lệ 1: 5432,1

chính xác 5, quy mô 0: 54321

chính xác 5, quy mô -1: 54320

chính xác 5, quy mô -3: 54000

+0

đây là một lời giải thích rất hay. Nếu bạn có thể đặt độ chính xác đó là tổng số chữ số ở trên cùng, thì sẽ dễ dàng hơn – Yogamurthy

+1

Thay đổi xong. Cảm ơn. –

Các vấn đề liên quan