intersect_count
intersect_count
説明
データの配布が直交的である必要はなく、ビットマップの共通領域のサイズを求めるための関数です。第1パラメータはビットマップ列、第2パラメータはフィルタリングに使用される次元列、第3パラメータは可変長パラメータであり、フィルタリングされた次元列の異なる値が取られます。
構文
BITMAP INTERSECT_COUNT(bitmap_column, column_to_filter, filter_values)
パラメータ
bitmap_column
: 計算するビットマップ列です。 column_to_filter
: 交差させる列の名前です。 filter_values
: フィルタリングされた次元列の異なる値です。
戻り値
bigint型の値を返します。
例
mysql> select intersect_count(user_id, dt, '2020-10-01', '2020-10-02'), intersect_count(user_id, dt, '2020-10-01') from tbl where dt in ('2020-10-01', '2020-10-02');
+--------------------------------------------------------------+------------------------------------------------+
| intersect_count(`user_id`, `dt`, '2020-10-01', '2020-10-02') | intersect_count(`user_id`, `dt`, '2020-10-01') |
+--------------------------------------------------------------+------------------------------------------------+
| 3 | 7 |
+--------------------------------------------------------------+------------------------------------------------+