TP5 find_in_set用法

Posted twilight-sparkle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TP5 find_in_set用法相关的知识,希望对你有一定的参考价值。

转自:http://www.02405.com/program/php/1099.html

$where[‘class_id‘] = [‘in‘, ‘$cid_all‘];
$where[‘id‘] = [‘in‘, $all_user_id];//或这样子
$where[‘title‘] = [‘like‘, ‘%php%‘];
$where[‘id‘] = [‘<>‘, $id];
$where[‘id‘] = [‘notin‘, $all_user_id];//不等于
 
 
//值为数字
$id=419;
$where[] = [‘exp‘,Db::raw("FIND_IN_SET($id,category)")];//category值为数字,例子:419,415,414
//值为字符串
$id值等于dfd 要注意‘引号
$where[] = [exp‘,Db::raw("FIND_IN_SET(‘$id‘,category)")];//category值为数字,例子:‘349/417/419‘,‘349/413/415‘,‘349/413/416‘
Db::name(‘menu‘)->where(‘FIND_IN_SET(:id,pid_all)‘,[‘id‘ => $id])->update([$field => $title]);

type 字段在数据库是以 1,2,3 形式存在 已说到FIND_IN_SET函数的使用

 

对于一些实在复杂的查询,比如find_in_set,也可以直接使用原生SQL语句进行查询,例如:

Db::table(‘think_user‘)
    ->where(‘find_in_set(1,sids)‘)
    ->select();

为了安全起见,我们可以对字符串查询条件使用参数绑定,例如:

Db::table(‘think_user‘)
    ->where(‘find_in_set(:id,sids)‘,[‘id‘=>$id])
    ->select();

 

以上是关于TP5 find_in_set用法的主要内容,如果未能解决你的问题,请参考以下文章

Hibernate hql语句 find_in_set 用法

Hibernate hql语句 find_in_set 用法

TP5报如下的错误 Indirect modification of overloaded element of thinkpaginatorCollection has no effect(代码片段

mysql 中find_in_set()和in()用法比较

mysql函数FIND_IN_SET函数用法

TP3.2TP3.2的 FIND_IN_SET()的用法