Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL 문에서 숫자 값을 16진수(HEX)로 입력하는 방법

MySQL에서는 숫자 값을 16진수(Hexadecimal) 형태로 입력할 수 있으며, 크게 두 가지 방법이 있습니다. 각 방법은 표기 방식에 차이가 있지만, 모두 식(expression)의 문맥에 따라 16진수 문자열이 자동으로 숫자 값으로 변환된다는 공통점이 있습니다.

1. 접두사 'X'를 사용하는 방법

첫 번째 방법은 16진수를 작은따옴표(' ')로 감싸고 앞에 접두사 X를 붙이는 것입니다. 이렇게 작성하면 HEX 문자열이 해당 식의 문맥에 맞게 자동으로 숫자 값으로 변환됩니다.

예제

mysql> Select X'5152545678'+ 10;
+-------------------+
| X'5152545678'+ 10 |
+-------------------+
| 349273609858      |
+-------------------+
1 row in set (0.00 sec)

위 예제에서 16진수 값 X'5152545678'은 숫자 349273609848로 변환되고, 여기에 10을 더해 최종 결과인 349273609858이 출력됩니다.

2. 접두사 0x를 사용하는 방법

두 번째 방법은 따옴표 없이 16진수 앞에 접두사 0x를 붙여 작성하는 것입니다. 이 경우에도 HEX 문자열은 식의 문맥에 따라 자동으로 수치 값으로 변환됩니다.

예제

mysql> Select 0x5152545678+10;
+-----------------+
| 0x5152545678+10 |
+-----------------+
| 349273609858    |
+-----------------+
1 row in set (0.00 sec)

결과를 보면 첫 번째 방법과 동일하게 349273609858이 반환되는 것을 확인할 수 있습니다.

정리

MySQL에서 16진수 리터럴을 입력할 때는 다음 두 가지 방식 중 하나를 선택하면 됩니다.

  • X'값' : 작은따옴표로 묶고 X 접두사를 붙이는 방식
  • 0x값 : 따옴표 없이 0x 접두사를 붙이는 방식

두 방식 모두 연산 등 식 안에서 사용되면 자동으로 숫자로 변환되므로, 상황에 맞게 편한 방식을 사용하면 됩니다.