BIT_XOR() is similar to the bitwise exclusive XOR (^) bit operator : BIT_XOR « Function « SQL / MySQL






BIT_XOR() is similar to the bitwise exclusive XOR (^) bit operator

    
mysql>
mysql> CREATE TABLE Classes
    -> (
    ->     ClassID SMALLINT NOT NULL PRIMARY KEY,
    ->     Dept CHAR(4) NOT NULL,
    ->     Level ENUM('Upper', 'Lower') NOT NULL,
    ->     TotalStudents TINYINT UNSIGNED NOT NULL
    -> );
Query OK, 0 rows affected (0.00 sec)

mysql> INSERT INTO Classes VALUES
    -> (1001, 'ANTH', 'Upper', 25),
    -> (1002, 'ANTH', 'Upper', 25),
    -> (1003, 'MATH', 'Upper', 18),
    -> (1004, 'ANTH', 'Lower', 19),
    -> (1005, 'ENGL', 'Upper', 28),
    -> (1006, 'MATH', 'Lower', 23),
    -> (1007, 'ENGL', 'Upper', 25),
    -> (1008, 'MATH', 'Lower', 29),
    -> (1009, 'ANTH', 'Upper', 25),
    -> (1010, 'ANTH', 'Lower', 30),
    -> (1011, 'ENGL', 'Lower', 26),
    -> (1012, 'MATH', 'Lower', 22),
    -> (1013, 'ANTH', 'Upper', 27),
    -> (1014, 'ANTH', 'Upper', 21),
    -> (1015, 'ENGL', 'Lower', 25),
    -> (1016, 'ENGL', 'Upper', 32);
Query OK, 16 rows affected (0.00 sec)
Records: 16  Duplicates: 0  Warnings: 0

mysql>
mysql>
mysql>
mysql> SELECT Dept, Level, BIT_XOR(TotalStudents) AS BitwiseXOR
    -> FROM Classes
    -> GROUP BY Dept, Level WITH ROLLUP;
+------+-------+------------+
| Dept | Level | BitwiseXOR |
+------+-------+------------+
| ANTH | Upper |         23 |
| ANTH | Lower |         13 |
| ANTH | NULL  |         26 |
| ENGL | Upper |         37 |
| ENGL | Lower |          3 |
| ENGL | NULL  |         38 |
| MATH | Upper |         18 |
| MATH | Lower |         28 |
| MATH | NULL  |         14 |
| NULL | NULL  |         50 |
+------+-------+------------+
10 rows in set (0.00 sec)

mysql>
mysql>
mysql> drop table Classes;
Query OK, 0 rows affected (0.00 sec)

   
    
    
    
  








Related examples in the same category

1.XOR operator