본문으로 건너뛰기
최종 수정: 에

BIT_SHIFT_RIGHT

설명​

오른쪽 비트 시프트 연산을 수행하여 이진수의 모든 비트를 지정된 자릿수만큼 오른쪽으로 이동합니다. 이 연산은 주로 이진 데이터를 처리하거나 효율적인 수학 계산(예: 나눗셈)을 수행하는 데 사용됩니다.

-1을 한 자리만큼 논리적 오른쪽 시프트하면 BIGINT_MAX (9223372036854775807)가 됩니다.

음수 값만큼 오른쪽 시프트하면 결과는 항상 0입니다.

구문​

BIT_SHIFT_RIGHT(<x>, <bits>)

매개변수​

  • <x>: 시프트할 수입니다.
  • <bits>: 오른쪽으로 시프트할 자릿수입니다. <x>를 몇 자리만큼 시프트할지 결정하는 정수입니다.

반환 값​

오른쪽 시프트 연산 결과를 나타내는 정수를 반환합니다.

예제​

  1. 예제 1
    select BIT_SHIFT_RIGHT(1024,3), BIT_SHIFT_RIGHT(-1,1), BIT_SHIFT_RIGHT(100, -1);
    +-------------------------+-----------------------+--------------------------+
    | BIT_SHIFT_RIGHT(1024,3) | BIT_SHIFT_RIGHT(-1,1) | BIT_SHIFT_RIGHT(100, -1) |
    +-------------------------+-----------------------+--------------------------+
    | 128 | 9223372036854775807 | 0 |
    +-------------------------+-----------------------+--------------------------+
  2. NULL 인수
    select BIT_SHIFT_RIGHT(1024, NULL), BIT_SHIFT_RIGHT(NULL, 3), BIT_SHIFT_RIGHT(NULL, NULL);
    +-----------------------------+--------------------------+-----------------------------+
    | BIT_SHIFT_RIGHT(1024, NULL) | BIT_SHIFT_RIGHT(NULL, 3) | BIT_SHIFT_RIGHT(NULL, NULL) |
    +-----------------------------+--------------------------+-----------------------------+
    | NULL | NULL | NULL |
    +-----------------------------+--------------------------+-----------------------------+