之前面试遇到的问题
问题就是数据库保存商品,商品有分类
比如同一个商品,可以是数码产品,可以是热门商品,可以是奢侈品等等
现在用 mysql 来存这个商品,要有分类信息
在进行查询分类的时候,如何快速查找
按照常规做法,就是类似于 bitmap
属于哪个商品,就在二进制位上标 1,存数据库的时候转为十进制存入
查询的时候,根据要查询的商品组合,搜索这个十进制数
但是这种方式有一些问题
第一,十进制数受限于数字最大值,肯定有个上限,几千种种类就没法表示了
第二,如果存如二进制字符串,那搜索就成问题
第三,比如二进制 101 111 1111 这几个值,在从右往左第 1 位和第 3 位都为 1,这个时候要挑选出这两类商品就
不好办了,总不至于把所有数字搜一次吧。
请教各位大佬,有没有比较简单的办法实现呢?谢谢
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.