Mysql 中使用 FIND_IN_SET 内置函数 的情景

有这样的一个场景,商品与类别,一个商品可能可以分类到几个类别中,假设商品数量比较大,所有类别的种类也比较多,

那么建立商品与类别的关联关系如果是中间表建立关系的话,可能的表数据据时最大可能是 商品总数量*总类别数量的笛卡儿积。或者另一种方式就是在商品表中增加一个类别的字段,这个字段可以存储逗号分隔多个字符串表示类别。如下图

  Mysql 中使用 FIND_IN_SET 内置函数 的情景_第1张图片
Mysql 中使用 FIND_IN_SET 内置函数 的情景_第2张图片
此时我们如果要查询 类别(category)
为001002的所有商品 则 Mysql 中使用 FIND_IN_SET 内置函数 的情景_第3张图片

但有点可惜的是这样的写法貌似是走不了索引查询的。

你可能感兴趣的:(MySQL)