Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 EXPORT_SET() 함수는 어떻게 작동합니까?

<시간/>

검색에 사용되는 MySQL 문자열 함수이기도 합니다. EXPORT_SET() 함수의 다음 구문의 도움으로 작동을 이해할 수 있습니다 -

구문

EXPORT_SET(비트, 켜기, 끄기, 구분 기호, 비트 수)

이 구문에서

비트(정수를 비트로 변환한 후 얻은)는 1인지 0인지 비교합니다.

'On'은 함수의 두 번째 인수이며 따옴표에 값이 있으며 첫 번째 인수의 비트 값이 1인 경우 반환됩니다.

'Off'는 함수의 세 번째 인수이며 따옴표에 값이 있으며 첫 번째 인수의 비트 값이 0이면 반환됩니다.

분리자는 출력을 표시하는 동안 반환된 값 사이에 배치하는 데 사용됩니다. 따옴표로 묶인 모든 문자 또는 값일 수 있습니다.

비트 수는 1 또는 0인 경우 비교할 비트 값을 갖습니다.

EXPORT_SET() 함수 작동

다음과 같이 작동합니다 -

  • 우선, 첫 번째 인수로 주어진 정수 값은 비트 수(즉, 0과 1)로 변환됩니다. 그런 다음 모든 비트가 1인지 0인지 확인합니다. 확인 순서는 오른쪽에서 왼쪽입니다.
  • 이제 MySQL은 비트가 1인지 0인지 확인한 후 무엇을 할지 결정합니다. 비트가 1이면 두 번째 인수인 'on'을 반환합니다. 그리고 비트가 0이면 세 번째 인수인 'off'를 반환합니다.
  • 확인은 다섯 번째 인수에 지정된 비트 수까지 계속됩니다.
  • 이제, 위의 내용을 기반으로 MySQL은 출력을 반환하고 반환된 값 사이에 구분 기호를 배치합니다. 값은 왼쪽에서 오른쪽으로 반환됩니다.

예시

mysql> EXPORT_SET(8, '1','0',',', 8) 선택;+------------------------ -------+| EXPORT_SET(8, '1','0',',', 8) |+-------------------------------------------- -+| 0,0,0,1,0,0,0,0 |+-------------------------------+1 행 집합(0.00초)mysql> EXPORT_SET(8, '1','0',',', 4) 선택;+-------------------- -----------+| EXPORT_SET(8, '1','0',',', 4) |+-------------------------------------------- -+| 0,0,0,1 |+-------------------------------+1 행 세트(0.00초) 

두 예에서 우리는 비트로 변환될 첫 번째 인수로 8을 지정했습니다(즉, 1000). 그런 다음 1과 0에서 최대 8비트(첫 번째 예에서) 이상 첫 번째와 두 번째 예에서 각각 8과 4가 다섯 번째 인수로 지정되었기 때문에 4비트로(두 번째 예에서). 출력을 표시하는 동안 쉼표(,)가 두 예제에서 네 번째 인수로 지정되었기 때문에 구분 기호로 사용되는 것을 관찰할 수 있습니다.

검사 순서가 오른쪽에서 왼쪽으로, 즉 예제 1000에서 가장 오른쪽 비트는 0이므로 세 번째 인수, 즉 0이 반환되고 다음 두 위치에 다시 0이 있다는 것을 알고 있습니다. 따라서 또 다른 두 개의 0이 반환되고 1이므로 두 번째 인수, 즉 1이 반환됩니다. 두 번째 예에서는 최대 4자리까지 검사를 수행했기 때문에 최대 4자리의 출력을 받았지만 첫 번째 예에서는 최대 8자리이므로 출력으로 8자리를 받았습니다. 출력 순서는 왼쪽에서 오른쪽으로 하므로 첫 번째 예에서는 0,0,0,1,0,0,0,0, 두 번째 예에서는 0,0,0,1로 출력됩니다.