若依遇到问题,当数据满足多个条件的其中一条时即可返回数据
好呢明显跟咱们想象的不一样(复选框很明显会有多个条件,只需要满足一个条件咱们就显示)经过查阅mysql语法得:**locate(字符串1,字符串2)**这个函数。运行结果应该会把affiliatNation值为1或3的数据都返回出来。很明显这样无论是前端还是后端都很麻烦,那有没有简单点的方法呢!这里最简单的就是前端把复选框的信息都一个一个组成队列发给咱们。然后咱们拆开来一个一个去请求,直到请求到所
·
开发遇到要求符合多个条件其中一个条件的数据返回
这里最简单的就是前端把复选框的信息都一个一个组成队列发给咱们
然后咱们拆开来一个一个去请求,直到请求到所有需要的数据。
很明显这样无论是前端还是后端都很麻烦,那有没有简单点的方法呢!
有人会说使用like:
直接上图(没做任何处理先看看数据库里都是有什么):
这是现有数据:
这个时候书写语句:
SELECT affiliat_nation
from sys_product
where
affiliat_nation LIKE "12"
运行结果应该会把affiliatNation值为1或3的数据都返回出来
看结果
这样讲吧:
就是 **“affiliat_nation”的值中包含“206”**就算判断成功(%表示零个或是多个字符)
好呢明显跟咱们想象的不一样(复选框很明显会有多个条件,只需要满足一个条件咱们就显示)
这样做也不对:
所以这种方法是行不通的!
经过查阅mysql语法得:**locate(字符串1,字符串2)**这个函数
大概意思:返回字符串1在字符串2中第一次出现的位置,只要字符串2中包含字符串1,那么返回值必然大于0。
仔细读几遍你就会明白
语句:
SELECT
affiliat_nation
FROM
sys_product
WHERE
LOCATE(
affiliat_nation,
"%2065 2069%")
OK了就是这个效果!
希望这篇博客可以帮到你,下一个bug见!
更多推荐
已为社区贡献15条内容
所有评论(0)