1. 程式人生 > >TP5.0 mysql 使用函數時 怎樣用數組的方式來查詢

TP5.0 mysql 使用函數時 怎樣用數組的方式來查詢

comm 表達式 字段 stat name 例子 ref www. where

今天在查詢數據的時候 遇到一個小問題 就是在用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

TP5.0 mysql 使用函數時 怎樣用數組的方式來查詢