今天在查询数据的时候 遇到一个小问题 就是在用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