bitmap_or

description

Syntax

BITMAP BITMAP_OR(BITMAP lhs, BITMAP rhs, ...)

计算两个及以上的输入bitmap的并集,返回新的bitmap.

example

1. mysql> select bitmap_count(bitmap_or(to_bitmap(1), to_bitmap(1))) cnt;
2. +------+
3. | cnt  |
4. +------+
5. |    1 |
6. +------+

8. mysql> select bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(1))) ;
9. +---------------------------------------------------------+
10. | bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(1))) |
11. +---------------------------------------------------------+
12. | 1                                                       |
13. +---------------------------------------------------------+

15. mysql> select bitmap_count(bitmap_or(to_bitmap(1), to_bitmap(2))) cnt;
16. +------+
17. | cnt  |
18. +------+
19. |    2 |
20. +------+

22. mysql> select bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(2)));
23. +---------------------------------------------------------+
24. | bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(2))) |
25. +---------------------------------------------------------+
26. | 1,2                                                     |
27. +---------------------------------------------------------+

29. mysql> select bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(2), to_bitmap(10), to_bitmap(0), NULL));
30. +--------------------------------------------------------------------------------------------+
31. | bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(2), to_bitmap(10), to_bitmap(0), NULL)) |
32. +--------------------------------------------------------------------------------------------+
33. | 0,1,2,10                                                                                   |
34. +--------------------------------------------------------------------------------------------+

36. mysql> select bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(2), to_bitmap(10), to_bitmap(0), bitmap_empty()));
37. +------------------------------------------------------------------------------------------------------+
38. | bitmap_to_string(bitmap_or(to_bitmap(1), to_bitmap(2), to_bitmap(10), to_bitmap(0), bitmap_empty())) |
39. +------------------------------------------------------------------------------------------------------+
40. | 0,1,2,10                                                                                             |
41. +------------------------------------------------------------------------------------------------------+

43. mysql> select bitmap_to_string(bitmap_or(to_bitmap(10), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5')));
44. +--------------------------------------------------------------------------------------------------------+
45. | bitmap_to_string(bitmap_or(to_bitmap(10), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5'))) |
46. +--------------------------------------------------------------------------------------------------------+
47. | 1,2,3,4,5,10                                                                                           |
48. +--------------------------------------------------------------------------------------------------------+

keywords

1. BITMAP_OR,BITMAP