MySQL @Wiki 実用リファレンス
ビット関数
最終更新:
my-sql
-
view
ビット関数
MySQL では、ビット演算に BIGINT(64 ビット)演算を使用します。したがって、以下のビット演算子の範囲は最大 64 ビットになります。
|
ビットごとの OR。
mysql> SELECT 29 | 15; -> 31
結果は符合なしの 64 ビット整数。
&
ビットごとの AND。
mysql> SELECT 29 & 15; -> 13
結果は符合なしの 64 ビット整数。
^
ビットごとの XOR。
mysql> SELECT 1 ^ 1; -> 0 mysql> SELECT 1 ^ 0; -> 1 mysql> SELECT 11 ^ 3; -> 8
結果は符合なしの 64 ビット整数。
XOR はバージョン 4.0.2 で追加された。
XOR はバージョン 4.0.2 で追加された。
<<
longlong(BIGINT)値のビットを左にシフトする。
mysql> SELECT 1 << 2; -> 4
結果は符合なしの 64 ビット整数。
>>
longlong(BIGINT)値のビットを右にシフトする。
mysql> SELECT 4 >> 2; -> 1
結果は符合なしの 64 ビット整数。
~
すべてのビットを反転させる。
mysql> SELECT 5 & ~1; -> 4
結果は符合なしの 64 ビット整数。
BIT_COUNT(N)
引数 N に指定された数値を 2 進表記したときに 1 に設定されるビット数を返す。
mysql> SELECT BIT_COUNT(29); -> 4