sql >> Database >  >> RDS >> Mysql

Hoe de OCT()-functie werkt in MySQL

In MySQL, de OCT() functie wordt gebruikt voor het converteren van decimaal naar octaal.

Om precies te zijn, het geeft een tekenreeksrepresentatie terug van de octale waarde van zijn argument.

Syntaxis

De basissyntaxis gaat als volgt:

OCT(N)

Waar n is de waarde die moet worden geconverteerd. Dit argument is een lang (BIGINT) getal.

Voorbeeld 1 – Basisgebruik

Hier is een voorbeeld van hoe het werkt:

SELECT OCT(8);

Resultaat:

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

Het resultaat is 10 want dat is het octale equivalent van 8 van het decimale stelsel.

Voorbeeld 2 – Verschillende waarden

Hier is nog een voorbeeld met verschillende waarden:

SELECT 
  OCT(10),
  OCT(20),
  OCT(30),
  OCT(100),
  OCT(1000);

Resultaat:

+---------+---------+---------+----------+-----------+
| OCT(10) | OCT(20) | OCT(30) | OCT(100) | OCT(1000) |
+---------+---------+---------+----------+-----------+
| 12      | 24      | 36      | 144      | 1750      |
+---------+---------+---------+----------+-----------+

Voorbeeld 3 – Uitdrukkingen

U kunt ook uitdrukkingen zoals de onderstaande gebruiken:

SELECT 
  OCT(100 + 2),
  OCT(100 * 2),
  OCT(100 / 2),
  OCT(100 - 2);

Resultaat:

+--------------+--------------+--------------+--------------+
| OCT(100 + 2) | OCT(100 * 2) | OCT(100 / 2) | OCT(100 - 2) |
+--------------+--------------+--------------+--------------+
| 146          | 310          | 62           | 142          |
+--------------+--------------+--------------+--------------+

Wat is Octaal?

Octaal is een numeriek notatiesysteem met 8 als basis. Dit in tegenstelling tot decimaal, die 10 als basis heeft.

In decimaal tellen we tot 9, dan beginnen we opnieuw door een nul toe te voegen na het eerste cijfer (bijv. na 9 komt 10, wat 1 is met een nul eraan toegevoegd).

In octaal (grondtal 8) tellen we echter alleen tot 7 voordat we opnieuw beginnen en een nul toevoegen. Dus 10 in octaal is het equivalent van 8 in decimaal.

Hier is een tabel om te demonstreren:

Decimaal (Basis 10) Octal (Basis 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. Een gids voor Pgpool voor PostgreSQL:deel één

  2. MySQL-query om best verkopende producten te krijgen

  3. Hoe schrijf ik LINQ's .Skip(1000).Take(100) in pure SQL?

  4. kolommen bijwerken met een volgnummer mysql