MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLで16進数を操作しますか?


16進数を使用するには、CONV()関数を使用してベース間を変換します。構文は次のとおりです-

SET anyVariableName = CONV(yourHexValue,16,10);

上記の構文を理解するために、ストアドプロシージャを作成しましょう。ストアドプロシージャを作成するためのクエリは次のとおりです-

mysql> DELIMITER //
mysql> CREATE PROCEDURE SP_HEX_TO_DEC( HEXVALUE VARCHAR(10) )
   -> BEGIN
   -> DECLARE Decimalvalue INTEGER;
   -> SET Decimalvalue = CONV(HEXVALUE,16,10);
   -> select Decimalvalue;
   -> END;
   -> //
Query OK, 0 rows affected (0.19 sec)
mysql> DELIMITER ;

上記のストアドプロシージャは、16進数を10進数に変換します。 Aは10進数で10を表すことがわかっているので、パラメーターとしてAを渡します。 CALLコマンドを使用してストアドプロシージャを呼び出します。

構文は次のとおりです-

CALL yourStoredProcedureName;

CALLコマンドを使用して、上記のストアドプロシージャを呼び出します。クエリは次のとおりです-

mysql> call SP_HEX_TO_DEC('A');

以下は、上記で作成したストアドプロシージャを使用して計算された10進値を表示する出力です-

+--------------+
| Decimalvalue |
+--------------+
| 10           |
+--------------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.01 sec)

selectステートメントで直接確認してください。

mysql> select conv('AB',16,10) as DecimalResult;
以下は出力です-

+---------------+
| DecimalResult |
+---------------+
| 171           |
+---------------+
1 row in set (0.00 sec)

16進数を10進数に変換する手順を見てみましょう。このルールを覚えておいてください-

A and B represented as 10 and 11 respectively in hexadecimal.
To convert it into decimal rule is as follows:
N ………+value3 *162 +value2 *161 + value1 * 160
= 10 * 161 + 11 * 160
= 160+11
= 171.

  1. PHP / MySQLでTimeを使用していますか?

    PHP / MySQLで時間を処理するには、strtotime()関数を使用できます。同じ-のPHPコードは次のとおりです。 $timeValue='8:55 PM'; $changeTimeFormat = date('H:i:s', strtotime($timeValue)); echo("The change Format in 24 Hours="); echo($changeTimeFormat); PHPコードのスナップショットは次のとおりです- これが出力です。 これが元の時刻を取得するためのMySQLクエリ

  2. MySQLでのAUTO_INCREMENT列の操作

    MySQLでAUTO_INCREMENT列を操作する方法を理解しましょう- AUTO_INCREMENT属性は、新しい行の一意のIDを生成するために使用されます。このステートメントがどのように機能するかを見てみましょう。その前に、以下のクエリを検討してください- クエリ CREATE TABLE tableName (    id MEDIUMINT NOT NULL AUTO_INCREMENT,    name CHAR(30) NOT NULL, PRIMARY KEY (id) ); INSERT INTO tableName (name