bitmap_xor

description

Syntax

BITMAP BITMAP_XOR(BITMAP lhs, BITMAP rhs, ...)

Compute the symmetric union of two or more input bitmaps, return the new bitmap.

example

1. mysql> select bitmap_count(bitmap_xor(bitmap_from_string('2,3'),bitmap_from_string('1,2,3,4'))) cnt;
2. +------+
3. | cnt  |
4. +------+
5. |    2 |
6. +------+

8. mysql> select bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'),bitmap_from_string('1,2,3,4')));
9. +----------------------------------------------------------------------------------------+
10. | bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'), bitmap_from_string('1,2,3,4'))) |
11. +----------------------------------------------------------------------------------------+
12. | 1,4                                                                                    |
13. +----------------------------------------------------------------------------------------+

15. MySQL> select bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'),bitmap_from_string('1,2,3,4'),bitmap_from_string('3,4,5')));
16. +---------------------------------------------------------------------------------------------------------------------+
17. | bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'), bitmap_from_string('1,2,3,4'), bitmap_from_string('3,4,5'))) |
18. +---------------------------------------------------------------------------------------------------------------------+
19. | 1,3,5                                                                                                               |
20. +---------------------------------------------------------------------------------------------------------------------+

22. MySQL> select bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'),bitmap_from_string('1,2,3,4'),bitmap_from_string('3,4,5'),bitmap_empty()));
23. +-------------------------------------------------------------------------------------------------------------------------------------+
24. | bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'), bitmap_from_string('1,2,3,4'), bitmap_from_string('3,4,5'), bitmap_empty())) |
25. +-------------------------------------------------------------------------------------------------------------------------------------+
26. | 1,3,5                                                                                                                               |
27. +-------------------------------------------------------------------------------------------------------------------------------------+

29. MySQL> select bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'),bitmap_from_string('1,2,3,4'),bitmap_from_string('3,4,5'),NULL));
30. +---------------------------------------------------------------------------------------------------------------------------+
31. | bitmap_to_string(bitmap_xor(bitmap_from_string('2,3'), bitmap_from_string('1,2,3,4'), bitmap_from_string('3,4,5'), NULL)) |
32. +---------------------------------------------------------------------------------------------------------------------------+
33. | NULL                                                                                                                      |
34. +---------------------------------------------------------------------------------------------------------------------------+

keyword

1. BITMAP_XOR,BITMAP