当前位置:首页 > CMS教程 > Thinkphp > 列表

使用tp框架和SQL语句查询数据表中的某字段包含某值

发布:smiling 来源: PHP粉丝网  添加日期:2022-01-10 17:07:20 浏览: 评论:0 

今天小编就为大家分享一篇使用tp框架和SQL语句查询数据表中的某字段包含某值,具有很好的参考价值,希望对大家有所帮助,一起跟随小编过来看看吧。

有时我们需要查询某个字段是否包含某值时,通常用like进行模糊查询,但对于一些要求比较准确的查询时(例如:微信公众号的关键字回复匹配查询)就需要用到MySQL的 find_in_set()函数;

以下是用find_in_set()函数写的sq查询l语句示例:

  1. $keyword = '你好'
  2.  
  3. $sql = "select * from table_name where find_in_set('".$keyword"',msg_keyword) and msg_active = 1"

以下是在tp框架中使用find_in_set()函数的查询示例:

  1. $keyword = '你好'
  2.  
  3.  $where = array
  4. 'msg_active' => 1, 
  5. '_string' => "find_in_set('".$keyword."',msg_keyword)" 
  6.  ); 
  7.  return $this->M('WechatResponseMsg')->where($where)->field('msg_content,msg_type')->find(); 

注意项:

1. 数据库中存的关键字要以英文“,”分隔;

2.存储数据要对分隔符进行处理,保证以英文“,”分隔关键字。

Tags: tp查询数据表 SQL查询数据表

分享到: