Loại DECIMAL của MySQL
Loại cột dữ liệu này tương tự như Show MySQL lưu trữ số trong cột Để lưu trữ các giá trị số, chúng ta có thể sử dụng kiểu dữ liệu số nguyên trong MySQL. Nhưng khi chúng ta phải duy trì độ chính xác của các giá trị số thì chúng ta phải sử dụng kiểu dữ liệu thập phân cho phép chúng ta chỉ định độ chính xác và tỷ lệ của các số thập phân sẽ bao gồm dấu thập phân trong giá trị của nó. Loại dữ liệu này thường được sử dụng để lưu trữ các giá trị về số lượng và trọng lượng cần được duy trì độ chính xác và độ chính xác Gói khoa học dữ liệu tất cả trong một(360+ khóa học, hơn 50 dự án) Giá 360+ Khóa học trực tuyến. hơn 50 dự án. Hơn 1500 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập Trọn đời Trong bài viết này, chúng ta sẽ tìm hiểu về kiểu dữ liệu thập phân, khai báo của nó, các thuộc tính được nó hỗ trợ, các từ đồng nghĩa thay thế cho kiểu dữ liệu thập phân, không gian lưu trữ cần thiết để lưu trữ số lượng thập phân và cách chúng ta có thể sử dụng kiểu dữ liệu thập phân một cách hiệu quả và hiệu quả trong Bắt đầu khóa học khoa học dữ liệu miễn phí của bạn Hadoop, Khoa học dữ liệu, Thống kê và những thứ khác cú pháp Cú pháp khai báo kiểu dữ liệu thập phân trong cột bảng MySQL như sau –
Trong đó nameOf Column là tên cột mà bạn muốn lưu trữ dữ liệu ở kiểu dữ liệu thập phân
Các từ đồng nghĩa cho kiểu dữ liệu DECIMAL là NUMERIC, FIXED và DEC có thể được sử dụng thay thế cho từ khóa DECIMAL Thuộc tính Như với kiểu dữ liệu INTEGER có thuộc tính UNSIGNED và thuộc tính ZEROFILL. Tương tự, kiểu dữ liệu DECIMAL cũng có các thuộc tính UNSIGNED và ZEROFILL có thể được gán cho các giá trị thập phân. Thuộc tính UNSIGNED khi được gán cho dữ liệu DECIMAL, cột typed giúp chúng ta hạn chế việc lưu trữ các số thập phân âm và đảm bảo rằng chỉ các giá trị thập phân dương mới được lưu trữ trong cột đó Thuộc tính ZEROFILL khi được gán cho cột kiểu dữ liệu thập phân sẽ luôn hiển thị giá trị của giá trị thập phân bằng cách đệm các số 0 lên theo chiều rộng của số thập phân được khai báo cho cột đó Hành vi Hãy xem xét một ví dụ trong đó kiểu dữ liệu cho cột được xác định theo cách sau – DECIMAL(5,3) sẽ cho phép chúng tôi lưu trữ các giá trị từ 99. 999 đến 99. 999 vì tỷ lệ là 3 chữ số thập phân sau dấu thập phân có thể có tối đa 3 vị trí và độ chính xác là 5 do đó, 5-3=2 hai chữ số sẽ được phép lưu trữ trong giá trị thập phân của cột đó. Vì không có thuộc tính nào được chỉ định nên các giá trị âm là giá trị đã ký cũng có thể được lưu trữ trong trường này Xem xét thêm một ví dụ trong đó chúng tôi không chỉ định giá trị tỷ lệ, DECIMAL(3). Trong trường hợp này, giá trị mặc định của tỷ lệ được coi là 0 và không có giá trị số nào chứa dấu thập phân có thể được lưu trữ trong cột này. Chỉ các số nguyên có thể được lưu trữ với phạm vi từ -999 đến 999 Hãy để chúng tôi lấy thêm một ví dụ trong đó chúng tôi không chỉ định một trong hai giá trị tham số i. e precision hoặc scale và khai báo kiểu dữ liệu của cột là DECIMAL. Trong trường hợp này, giá trị mặc định của độ chính xác sẽ được coi là 10 và đối với giá trị 0 của tham số tỷ lệ sẽ được coi là. Do đó, phạm vi cho phép của các giá trị được lưu trữ trong cột này sẽ nằm trong khoảng từ -9999999999 đến 9999999999 Do đó, có thể kết luận rằng các giá trị tham số độ chính xác và tỷ lệ là hoàn toàn tùy chọn đối với thông số kỹ thuật và giá trị mặc định của tỷ lệ là 0 trong khi giá trị mặc định của tham số độ chính xác là 10 Lưu trữ kiểu dữ liệu DECIMAL trong MySQLCác giá trị cho phần phân số và phần nguyên của giá trị thập phân là giá trị trước và sau dấu thập phân được gán không gian lưu trữ riêng biệt trong MYSQL. Vì định dạng nhị phân được sử dụng để lưu trữ các giá trị trong MYSQL cho kiểu dữ liệu thập phân, nó cần 4 byte bộ nhớ để lưu trữ 9 chữ số. Đối với mỗi gói gồm 9 chữ số trước và sau dấu thập phân, cần có 4 byte dung lượng lưu trữ. Đối với các chữ số còn lại để lưu trữ, chúng yêu cầu dung lượng lưu trữ theo cách sau – 1 hoặc 2 chữ số còn lại chiếm 1 byte dung lượng lưu trữ, 3 hoặc 4 chữ số còn lại chiếm 2 byte dung lượng lưu trữ, 5 hoặc 6 chữ số còn lại chiếm 3 byte dung lượng lưu trữ và 7 hoặc 9 chữ số còn lại chiếm 4 byte dung lượng lưu trữ Xem xét một ví dụ, kiểu dữ liệu DECIMAL(20,8) sẽ yêu cầu 4 byte dung lượng lưu trữ cho 8 chữ số sẽ xuất hiện sau dấu thập phân và cho phần còn lại 20-8=12 i. e 12 chữ số sẽ được chia thành hai. Trong số 12, 9 chữ số sẽ yêu cầu 4 byte và đối với 12-9 chữ số còn lại, tôi. e 3 chữ số 2 byte sẽ được yêu cầu. Do đó, tổng cộng 4+4+2 =10 byte dung lượng lưu trữ sẽ được yêu cầu để lưu trữ giá trị thập phân của loại này Thí dụHãy để chúng tôi tạo một bảng sẽ chứa cột kiểu dữ liệu thập phân trong đó. Ở đây, tôi sẽ tạo một bảng có tên educba_stock chứa cột cost_in_rupees của kiểu dữ liệu thập phân với độ chính xác 20 và tỷ lệ 2 bằng cách sử dụng truy vấn tạo sau – ________số 8 dẫn đến đầu ra sau - Hãy để chúng tôi chèn một số bản ghi vào đó bằng cách thực hiện lệnh sau
cung cấp đầu ra sau trong trình soạn thảo sqlyog – Bây giờ chúng ta hãy truy xuất dữ liệu được lưu trữ trong bảng educba_stock bằng truy vấn chọn sau –
dẫn đến đầu ra sau - Hãy để chúng tôi thay đổi cột cost_in_rupees và đặt thuộc tính ZEROFILL cho nó bằng truy vấn ALTER sau –
điều đó sẽ dẫn đến đầu ra sau - Lưu ý rằng bất cứ khi nào thuộc tính ZEROFILL được gán cho kiểu dữ liệu DECIMAL, MYSQL sẽ tự động thêm thuộc tính UNSIGNED vào bên trong nó Hãy để chúng tôi truy xuất các giá trị từ bảng và kiểm tra xem chúng được hiển thị như thế nào sau khi gán thuộc tính ZEROFILL cho kiểu dữ liệu thập phân của cột cost_in_rupees bằng cách sử dụng truy vấn chọn sau –
điều đó bây giờ dẫn đến đầu ra sau - Có thể thấy rằng các số 0 được thêm vào và thêm vào trước cho chiều rộng hiển thị tối đa của cột đó Sự kết luậnKiểu dữ liệu thập phân được sử dụng để lưu trữ các giá trị số cần được duy trì độ chính xác và độ chính xác và các giá trị sau dấu thập phân cần được lưu trữ. Các thuộc tính ZEROFILL và UNSIGNED có thể được sử dụng để thêm các số 0 vào các chữ số còn lại và hạn chế các giá trị âm đã ký để lưu trữ trong cột của bạn với kiểu dữ liệu thập phân Bài viết được đề xuấtĐây là hướng dẫn về MySQL Decimal. Ở đây chúng ta thảo luận về định nghĩa, cú pháp, thuộc tính, Lưu trữ kiểu dữ liệu DECIMAL trong MySQL và ví dụ về triển khai mã. Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm – Kiểu dữ liệu cho số thập phân trong MySQL là gì?Trong MySQL, NUMERIC được triển khai dưới dạng DECIMAL , vì vậy các nhận xét sau đây về DECIMAL áp dụng như nhau cho NUMERIC. MySQL lưu trữ các giá trị DECIMAL ở định dạng nhị phân . Xem Phần 12. 25, “Toán chính xác”.
Kiểu dữ liệu cho số thập phân là gì?Kiểu dữ liệu thập phân là một phương pháp độc lập với máy đại diện cho các số có tối đa 32 chữ số có nghĩa, với các giá trị hợp lệ trong khoảng 10 -129 - 10 +125. Khi bạn xác định một cột có kiểu dữ liệu DECIMAL( p ) , cột đó có tổng cộng p (< = 32) chữ số có nghĩa.
Số thập phân có phải là kiểu dữ liệu trong SQL Server không?Chuyển đổi dữ liệu thập phân và số
. Ví dụ: thập phân (5,5) và thập phân (5,0) được coi là các loại dữ liệu khác nhau. SQL Server considers each combination of precision and scale as a different data type. For example, decimal(5,5) and decimal(5,0) are considered different data types.
Kiểu dữ liệu số trong MySQL là gì?MySQL hỗ trợ tất cả các kiểu dữ liệu số SQL tiêu chuẩn. Các loại này bao gồm các loại dữ liệu số chính xác ( INTEGER , SMALLINT , DECIMAL và NUMERIC ), cũng như các loại dữ liệu số gần đúng ( FLOAT , REAL , . |