BIT_SHIFT_LEFT
説明
左シフト演算を実行し、2進数のすべてのビットを指定された位置数だけ左に移動します。これはビット演算の一種で、バイナリデータの処理や効率的な数学計算によく使用されます。
BIGINT型の最大値(9223372036854775807)を1位置左にシフトすると、結果は-2になります。
構文
BIT_SHIFT_LEFT(<x>, <bits>)
パラメータ
<x>: シフトする数値。<bits>: 左シフトする位置数。<x>が何位置シフトされるかを決定する整数です。
戻り値
左シフト演算後の結果を表す整数を返します。
例
-
例1
select BIT_SHIFT_LEFT(5, 2), BIT_SHIFT_LEFT(-5, 2), BIT_SHIFT_LEFT(9223372036854775807, 1);+----------------------+-----------------------+----------------------------------------+
| BIT_SHIFT_LEFT(5, 2) | BIT_SHIFT_LEFT(-5, 2) | BIT_SHIFT_LEFT(9223372036854775807, 1) |
+----------------------+-----------------------+----------------------------------------+
| 20 | -20 | -2 |
+----------------------+-----------------------+----------------------------------------+ -
NULL引数
select BIT_SHIFT_LEFT(5, NULL), BIT_SHIFT_LEFT(NULL, 2), BIT_SHIFT_LEFT(NULL, NULL);+-------------------------+-------------------------+----------------------------+
| BIT_SHIFT_LEFT(5, NULL) | BIT_SHIFT_LEFT(NULL, 2) | BIT_SHIFT_LEFT(NULL, NULL) |
+-------------------------+-------------------------+----------------------------+
| NULL | NULL | NULL |
+-------------------------+-------------------------+----------------------------+