阡陌博客 - thinkphp 多值查询
type: channel
link: https://www.kinmor.com/tag/thinkphp-多值查询/
items: Thinkphp like 单字段多个值 or 模糊查询

Thinkphp like 单字段多个值 or 模糊查询
type: item
date: 2018-05-25T10:40:34+08:00
description: 最近小鱼哥要做个标签模糊查询的需求。比如标签值：tags：广州建站,番禺建站,企业建站我想查询所有新闻Tags字段含有以上任意一个关键词的记录，怎么实现呢？$tags =array("广州建站","番禺建站"); 重组查询条件，因为模糊查询的like 关键词两边要追加“%”；$map =array(); foreach($tags as $k=>$v){ $map[$k] ="%".$v."%"; } $where['tags'] =array('like',$diff,'or'); 以上得出的sql语句是示例表为t_news 查询出6个记录 语法如下**SELECT * FROM `t_news` WHERE (`tags` LIKE '广州建站' OR `tags` LIKE '番禺建站') ORDER BY update_time DESC LIMIT 6** 好了以上的查询就可以应用到thinkphp中去了。