我需要一个可以设置多个值的字段。我不想继续使用mysql集合。另一种方式是,我可以说我有多个类别。
cat 1、cat 2、cat 3....etc。仅限于大约20个类别。假设它们是1 (00001),2(00010),4(00100)...etc。
如果我的帖子在‘cat1’中,我会在帖子表字段中添加值1(00001),即TINYINT。如果我的帖子在'cat 1‘和'cat 2’中,我会在TINYINT字段中添加值3 (00011)。
现在我想要得到‘cat1’中的所有帖子,我想查询类似field=‘* 1’的内容,即只是检查最后一位是否打开。
再举一个例子。假设我的帖子在'cat 2‘和'cat 3’中,我会加上值6 (00111)。现在我想要得到“猫2”中的所有帖子。我想查询where field=‘*1*’。
如上面的例子,我想知道如何根据哪个位是on来查询整型字段?
发布于 2014-11-06 17:53:23
多年没有玩过位串了(在大型机时代,它用来存储大量的信息)。
但是,您应该能够使用位算术。例如,检查第二位是否为on:-
SELECT *
FROM sometable
WHERE bit_field & 2 = 2或者检查第二位是否打开,第一位是否关闭:-
SELECT *
FROM sometable
WHERE bit_field & 3 = 2这里有几个细节:
http://dev.mysql.com/doc/refman/5.0/en/bit-functions.html
https://stackoverflow.com/questions/26775036
复制相似问题