sql >> Databasteknik >  >> RDS >> Mysql

Hur OCT()-funktionen fungerar i MySQL

I MySQL, OCT() funktion används för att konvertera från decimal till oktal.

Mer exakt returnerar den en strängrepresentation av det oktala värdet för dess argument.

Syntax

Den grundläggande syntaxen ser ut så här:

OCT(N)

Där n är värdet som ska konverteras. Detta argument är ett långt (STORT) tal.

Exempel 1 – Grundläggande användning

Här är ett exempel på hur det fungerar:

SELECT OCT(8);

Resultat:

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

Resultatet är 10 eftersom det är den oktala ekvivalenten till 8 från decimalsystemet.

Exempel 2 – Olika värden

Här är ett annat exempel med olika värden:

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

Resultat:

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

Exempel 3 – Uttryck

Du kan också använda uttryck som de nedan:

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

Resultat:

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

Vad är Octal?

Oktal är ett system med numerisk notation som har 8 som bas. Detta till skillnad från decimal, som har 10 som bas.

I decimal räknar vi upp till 9 och börjar sedan igen med att lägga till en nolla efter den första siffran (t.ex. efter 9 kommer 10, vilket är 1 med en nolla tillagd).

I oktal (bas 8) räknar vi dock bara till 7 innan vi börjar igen och lägger till en nolla. Så 10 i oktal motsvarar 8 i decimal.

Här är en tabell att visa:

Decimal (bas 10) Octal (Bas 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. Hur kan jag hitta icke-ASCII-tecken i MySQL?

  2. Android Room Embedded Relation ignorerar SQL where-villkor

  3. Hämta java.sql.SQLException:Operation inte tillåten efter att ResultSet stängts

  4. Hur man testar för överlappande datum i PostgreSQL