4

假设你有两个二进制值

001011 
001111

您如何获得 MySQL 中不同位数的数量?我试过

SELECT BIT_COUNT(BINARY  001011 ^ BINARY 001111)

这将返回 6,而在此示例中我需要一个返回 1 的解决方案。

4

3 回答 3

3
SELECT BIT_COUNT( CONV( '001011', 2, 10 ) ^ CONV( '001111', 2, 10 ) )
于 2011-08-18T17:48:08.073 回答
3
SELECT BIT_COUNT(b'001011' ^ b'001111');
于 2011-08-18T17:51:49.103 回答
0

它将数字 1011 和 1111(以 10 为底)转换为二进制并进行比较。如果你这样做了:

SELECT BIT_COUNT(11 ^ 15)

它会工作的。

于 2011-08-18T17:53:21.450 回答