Mysql
 sql >> Baza danych >  >> RDS >> Mysql

2 sposoby konwersji liczby na ósemkową w MySQL

Jeśli chcesz przekonwertować liczbę z dziesiętnej na ósemkową (podstawa 8), w przypadku korzystania z MySQL przychodzą na myśl dwie funkcje. Jedna funkcja służy do wykonywania konwersji ósemkowych, druga do wykonywania konwersji między różnymi bazami. Oto one:

OCT()
Ta funkcja jest używana specjalnie do konwersji z dziesiętnej na ósemkową.
CONV()
Ta funkcja ma bardziej ogólny cel. Pozwala określić podstawę oryginalnej liczby i wynik. Innymi słowy, możesz przekonwertować z dowolnej podstawy na dowolną podstawę (o ile każda podstawa ma wartość od 2 do 36).

Więcej o tych dwóch funkcjach poniżej.

Funkcja OCT()

Jak wspomniano, ta funkcja jest przeznaczona specjalnie do konwersji z dziesiętnej na ósemkową. Jego składnia wygląda następująco:

OCT(N)

Gdzie N to liczba dziesiętna, którą chcesz przekonwertować na ósemkową.

Oto przykład:

SELECT OCT(8);

Wynik:

+--------+
| OCT(8) |
+--------+
| 10     |
+--------+

Wynik to 10 ponieważ jest to ósemkowy odpowiednik 8 w systemie dziesiętnym.

Funkcja CONV()

Jest to funkcja o bardziej ogólnym przeznaczeniu, która pozwala określić, nie tylko system liczbowy do przekonwertowania na , ale także system liczbowy do konwersji z .

Składnia:

CONV(N,from_base,to_base)

Gdzie N to liczba do konwersji, from_base jest bazą do konwersji i to_base jest podstawą do konwersji.

Możemy więc przepisać poprzedni przykład do tego:

SELECT CONV(8, 10, 8);

Wynik:

+----------------+
| CONV(8, 10, 8) |
+----------------+
| 10             |
+----------------+

I otrzymujemy ten sam wynik, ponieważ konwertujemy liczbę o podstawie 10 na podstawę 8.

Jedna z zalet CONV() funkcja polega na tym, że możesz konwertować między innymi bazami. Na przykład równie dobrze moglibyśmy przekonwertować z, powiedzmy, podstawy 8 na podstawę 16.

Co to jest ósemkowy?

Oktal to system notacji numerycznej, który ma 8 jako podstawę. Jest to w przeciwieństwie do dziesiętnego, który ma podstawę 10.

W systemie dziesiętnym liczymy do 9, a następnie zaczynamy od nowa, dodając zero po pierwszej cyfrze (np. po 9 jest 10, czyli 1 z dodanym zerem).

Jednak w systemie ósemkowym (podstawa 8) liczymy tylko do 7 przed ponownym rozpoczęciem i dodaniem zera. Zatem 10 w systemie ósemkowym jest odpowiednikiem 8 w systemie dziesiętnym.

Oto tabela do zademonstrowania:

Ułamek dziesiętny (podstawa 10) ósemkowe (podstawa 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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. convert_tz zwraca wartość null

  2. Najlepsze alternatywy dla środowiska pracy MySQL

  3. Wdrażanie serwera Percona w chmurze hybrydowej

  4. Jak połączyć się z bazą danych MySQL

  5. Python:użyć mysqldb do zaimportowania tabeli MySQL jako słownika?