bitmap_and

description

Syntax

BITMAP BITMAP_AND(BITMAP lhs, BITMAP rhs)

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

example

  1. mysql> select bitmap_count(bitmap_and(to_bitmap(1), to_bitmap(2))) cnt;
  2. +------+
  3. | cnt |
  4. +------+
  5. | 0 |
  6. +------+
  7. mysql> select bitmap_to_string(bitmap_and(to_bitmap(1), to_bitmap(2)));
  8. +----------------------------------------------------------+
  9. | bitmap_to_string(bitmap_and(to_bitmap(1), to_bitmap(2))) |
  10. +----------------------------------------------------------+
  11. | |
  12. +----------------------------------------------------------+
  13. mysql> select bitmap_count(bitmap_and(to_bitmap(1), to_bitmap(1))) cnt;
  14. +------+
  15. | cnt |
  16. +------+
  17. | 1 |
  18. +------+
  19. MySQL> select bitmap_to_string(bitmap_and(to_bitmap(1), to_bitmap(1)));
  20. +----------------------------------------------------------+
  21. | bitmap_to_string(bitmap_and(to_bitmap(1), to_bitmap(1))) |
  22. +----------------------------------------------------------+
  23. | 1 |
  24. +----------------------------------------------------------+
  25. MySQL> select bitmap_to_string(bitmap_and(bitmap_from_string('1,2,3'), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5')));
  26. +-----------------------------------------------------------------------------------------------------------------------+
  27. | bitmap_to_string(bitmap_and(bitmap_from_string('1,2,3'), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5'))) |
  28. +-----------------------------------------------------------------------------------------------------------------------+
  29. | 1,2 |
  30. +-----------------------------------------------------------------------------------------------------------------------+
  31. MySQL> select bitmap_to_string(bitmap_and(bitmap_from_string('1,2,3'), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5'),bitmap_empty()));
  32. +---------------------------------------------------------------------------------------------------------------------------------------+
  33. | bitmap_to_string(bitmap_and(bitmap_from_string('1,2,3'), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5'), bitmap_empty())) |
  34. +---------------------------------------------------------------------------------------------------------------------------------------+
  35. | |
  36. +---------------------------------------------------------------------------------------------------------------------------------------+
  37. MySQL> select bitmap_to_string(bitmap_and(bitmap_from_string('1,2,3'), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5'),NULL));
  38. +-----------------------------------------------------------------------------------------------------------------------------+
  39. | bitmap_to_string(bitmap_and(bitmap_from_string('1,2,3'), bitmap_from_string('1,2'), bitmap_from_string('1,2,3,4,5'), NULL)) |
  40. +-----------------------------------------------------------------------------------------------------------------------------+
  41. | NULL |
  42. +-----------------------------------------------------------------------------------------------------------------------------+

keywords

  1. BITMAP_AND,BITMAP