MySql 中的 FIND_IN_SET 的使用和相关问题
QQ 群里有人讨论如果在 category_ids 中打开 12 的分类,而 category_ids 中的 ID 是以 逗号分开的。
使用 LIKE 一定是不行的。
于是我找了一下,发一个 FIND_IN_SET 的函数[1],可以在 SQL 中找到相关对应的 ID。
SELECT * FROM `fa_test` WHERE FIND_IN_SET(12,`category_ids` ) LIMIT 0, 1000
而且 FastAdmin 中的 Bootstrap-Table 搜索中也可以使用 FIND_IN_SET
群里的大饼也提出一个问题:
【话唠】 ★大饼-山东 2018/4/3 11:02:13
find_in_set 全表扫描啊
11:03:03
【话唠】 ★大饼-山东 2018/4/3 11:03:03
如果操作频繁不如新建一个 k->v 的关系map表
mysql数据库中find_in_set()和in()用法区别 http://www.111cn.net/database/mysql/50190.htm ↩︎