value のバイナリ表現において、セットされているビットの数をカウントします。
構文
BIGINT BIT_COUNT(BIGINT|INT|SMALLINT|TINYINT|BOOLEAN value)パラメーター
value: 必須。BIGINT、INT、SMALLINT、TINYINT、または BOOLEAN 型の値。
戻り値
BIGINT 型の値が返されます。戻り値は、次のルールによって決まります。
value パラメーターが BIGINT、INT、SMALLINT、TINYINT、または BOOLEAN 型でない場合、エラーが返されます。
value パラメーターが NULL の場合、エラーが返されます。
例
-- 2 を返します。
SELECT BIT_COUNT(5);
-- 15 を返します。
SELECT BIT_COUNT(32767S);
-- 2 を返します。
SELECT BIT_COUNT(-127Y);
-- 1 を返します。
SELECT BIT_COUNT(true);
-- 0 を返します。
SELECT BIT_COUNT(false);
-- value 列が NULL の場合、NULL を返します。
SELECT BIT_COUNT(value) FROM
VALUES (0), (1), (2), (3), (NULL) AS TAB(value);
-- 結果。
+------------+
| _c0 |
+------------+
| 0 |
| 1 |
| 1 |
| 2 |
| NULL |
+------------+