Nếu bạn cần chuyển đổi một số từ thập phân sang bát phân (cơ số 8), hãy lưu ý đến hai hàm nếu bạn đang sử dụng MySQL. Một chức năng đặc biệt để thực hiện chuyển đổi bát phân, chức năng kia là để thực hiện chuyển đổi giữa các cơ số khác nhau. Những điều này như sau:
-
OCT()
- Hàm này được sử dụng đặc biệt để chuyển đổi từ hệ thập phân sang bát phân.
-
CONV()
- Hàm này có mục đích chung hơn. Nó cho phép bạn chỉ định cơ sở của số ban đầu và kết quả. Nói cách khác, bạn có thể chuyển đổi từ bất kỳ cơ sở nào sang bất kỳ cơ sở nào (miễn là mỗi cơ sở nằm trong khoảng từ 2 đến 36).
Thông tin thêm về hai chức năng này bên dưới.
Hàm OCT ()
Như đã đề cập, chức năng này đặc biệt để chuyển đổi từ hệ thập phân sang bát phân. Cú pháp của nó như sau:
OCT(N)
Ở đâu N
là số thập phân bạn muốn chuyển đổi thành bát phân.
Đây là một ví dụ:
SELECT OCT(8);
Kết quả:
+--------+ | OCT(8) | +--------+ | 10 | +--------+
Kết quả là 10
bởi vì đó là số bát phân tương đương với 8 trong hệ thập phân.
Hàm CONV ()
Đây là một chức năng có mục đích chung hơn cho phép bạn chỉ định, không chỉ hệ thống đánh số để chuyển đổi thành , mà còn là hệ thống đánh số để chuyển đổi từ .
Cú pháp:
CONV(N,from_base,to_base)
Ở đâu N
là số cần chuyển đổi, from_base
là cơ sở để chuyển đổi từ và to_base
là cơ sở để chuyển đổi sang.
Vì vậy, chúng ta có thể viết lại ví dụ trước đó thành:
SELECT CONV(8, 10, 8);
Kết quả:
+----------------+ | CONV(8, 10, 8) | +----------------+ | 10 | +----------------+
Và chúng tôi nhận được kết quả tương tự vì chúng tôi chuyển đổi số từ cơ số 10 sang cơ số 8.
Một lợi ích của CONV()
chức năng là bạn có thể chuyển đổi giữa các cơ sở khác. Ví dụ, chúng ta có thể dễ dàng chuyển đổi từ cơ số 8 sang cơ số 16.
Octal là gì?
Hệ bát phân là một hệ thống ký hiệu số có 8 làm cơ số. Điều này trái ngược với số thập phân, có 10 làm cơ số.
Trong hệ thập phân, chúng tôi đếm đến 9, sau đó bắt đầu lại bằng cách thêm số 0 vào sau chữ số đầu tiên (ví dụ:sau 9 đến 10, là 1 với số 0 được thêm vào).
Tuy nhiên, trong hệ bát phân (cơ số 8), chúng ta chỉ đếm đến 7 trước khi bắt đầu lại và thêm số 0. Vì vậy, 10 trong bát phân tương đương với 8 trong thập phân.
Đây là bảng để minh chứng:
Decimal (Cơ số 10) | Hệ bát phân (Cơ số 8) |
---|---|
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 10 |
9 | 11 |
10 | 12 |
11 | 13 |
12 | 14 |
13 | 15 |
14 | 16 |
15 | 17 |
16 | 20 |
17 | 21 |
18 | 22 |
19 | 23 |
20 | 24 |