TP5.0 mysql 使用函数时 怎样用数组的方式来查询

今天在查询数据的时候 遇到一个小问题  就是在用TP5.0的时候 查询数据的时候需要用到一个函数 FIND_IN_SET  对于这个函数的用处 就是  首先举个例子来说: 
有个文章表里面有个type字段,它存储的是文章类型,有 1头条、2推荐、3热点、4图文等等 。现在有篇文章他既是头条,又是热点,还是图文,type中以 1,3,4 的格式存储。那我们如何用sql查找所有type中有4的图文类型的文章呢??那么就要用到FIND_IN_SET  函数了对于这个函数的更多详解   传送门:http://www.cnblogs.com/xiaoxi/p/5889486.html

说了这么多  下面看实例 在TP5中 我已知的有两种种方式 

第一种为数组方式 exp是TP的表达式 

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

1 $map[]=['exp','FIND_IN_SET(3,recommend_status)'];
2 $map['game_status'] = 1;
3 
4 Db::name('game')->where($map)->select();

第二种为字符串形式

  Db::name('game')->where("game_status=1 AND FIND_IN_SET('3',recommend_status)")->select(); 

 其次在用其他查询方式时也可以在where条件中用 字符串表达式

Db::name('game')->where('recommend_status','exp','AND FIND_IN_SET(3,recommend_status)')->select();

 

如各位童鞋在学习TP5遇到不懂的 可以在下方留言  

本文为作者原创文章,转载无需和我联系,但请注明来自 http://www.cnblogs.com/kzfbk/p/7728566.html

 

posted @ 2017-10-25 14:20  拾柒丷  阅读(4844)  评论(0编辑  收藏  举报