MySQL 8にCONVで値を指定した進数に変更する

書式
CONV(数値 , 変換前進数, 変換後進数 )

実行例1
10進数を2進数に変更します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mysql> SELECT CONV( 255, 10, 2 )result;
+----------+
| result |
+----------+
| 11111111 |
+----------+
1 row in set (0.08 sec)
mysql> SELECT CONV( 255, 10, 2 )result; +----------+ | result | +----------+ | 11111111 | +----------+ 1 row in set (0.08 sec)
mysql> SELECT CONV( 255, 10, 2 )result;
+----------+
| result   |
+----------+
| 11111111 |
+----------+
1 row in set (0.08 sec)

実行例2
16進数を10進数に変更します。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mysql> SELECT CONV( 'F', 16, 10 )result;
+--------+
| result |
+--------+
| 15 |
+--------+
1 row in set (0.00 sec)
mysql> SELECT CONV( 'F', 16, 10 )result; +--------+ | result | +--------+ | 15 | +--------+ 1 row in set (0.00 sec)
mysql> SELECT CONV( 'F', 16, 10 )result;
+--------+
| result |
+--------+
| 15     |
+--------+
1 row in set (0.00 sec)

実行例3
存在しない値を指定する場合、「0」が返ります。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mysql> SELECT CONV( 'F', 2, 10 )result;
+--------+
| result |
+--------+
| 0 |
+--------+
1 row in set, 1 warning (0.02 sec)
mysql> SELECT CONV( 'F', 2, 10 )result; +--------+ | result | +--------+ | 0 | +--------+ 1 row in set, 1 warning (0.02 sec)
mysql> SELECT CONV( 'F', 2, 10 )result;
+--------+
| result |
+--------+
| 0      |
+--------+
1 row in set, 1 warning (0.02 sec)

実行例4
マイナスを指定する場合、整数と同じ値を返します

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mysql> SELECT CONV( 'F', 16, -10 )result;
+--------+
| result |
+--------+
| 15 |
+--------+
1 row in set (0.02 sec)
mysql> SELECT CONV( 'F', 16, -10 )result; +--------+ | result | +--------+ | 15 | +--------+ 1 row in set (0.02 sec)
mysql> SELECT CONV( 'F', 16, -10 )result;
+--------+
| result |
+--------+
| 15     |
+--------+
1 row in set (0.02 sec)

 

MySQL

Posted by arkgame