您显示的是二进制数字
因此,只需将这些数字存储为整数数据类型(如内部所示,内部使用位存储)。您可以按照文档中建议的方式使用BIGINT进行按位操作(http://dev.mysql.com/doc/refman/5.7/en/bit- functions.html)。
这是设置标志n的方法:
UPDATE mytable
SET bitmask = POW(2, n-1)
WHERE id = 12345;
UPDATE mytable
SET bitmask = bitmask | POW(2, n-1)
WHERE id = 12345;
这是检查标志的方法:
SELECT *
FROM mytable
WHERE bitmask & POW(2, n-1)