欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

laravel 實(shí)現(xiàn)根據(jù)字段不同值做不同查詢

 更新時(shí)間:2019年10月23日 10:41:14   作者:侯蜀黍  
今天小編就為大家分享一篇laravel 實(shí)現(xiàn)根據(jù)字段不同值做不同查詢,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

在開發(fā)過(guò)程中我們經(jīng)常遇到這種情況:

例如,一個(gè)信息表message,字段type 1.操作提醒 2.平臺(tái)通知,表message_read記錄當(dāng)信息是平臺(tái)通知時(shí)用戶瀏覽狀況

那么 當(dāng)信息是平臺(tái)通知時(shí)是針對(duì)的所有用戶,我們想根據(jù)他是否瀏覽狀態(tài)去在消息提醒里去顯示他未讀的消息

語(yǔ)句如下(laravel)

public function index()
 {
//  監(jiān)聽sql語(yǔ)句
//  DB::listen(function($query) {
//   $bindings = $query->bindings;
//   $sql = $query->sql;
//   foreach ($bindings as $replace){
//    $value = is_numeric($replace) ? $replace : "'".$replace."'";
//    $sql = preg_replace('/\?/', $value, $sql, 1);
//   }
//   dd($sql);
//  });
   $uid = 13; 
   return MessageModel::where(function($query) use($uid){
    $query->where(['type'=>2,'status'=>1,])->whereNotIn('id',function($query) use($uid){
     $query->select('mid')->from('message_read')->where([['message.id','=',DB::raw('mid')],'uid'=>$uid]);
    });
   })->orwhere(function($query) use($uid){
    $query->where(['type'=>1,'status'=>1,'is_read'=>2,'uid'=>$uid]);
   })->get();
 }

數(shù)據(jù)表格式

CREATE TABLE `message` (
 `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
 `uid` int(11) DEFAULT NULL COMMENT '需要通知的用戶id',
 `title` varchar(255) NOT NULL COMMENT '標(biāo)題',
 `describe` varchar(255) DEFAULT NULL COMMENT '簡(jiǎn)介',
 `type` tinyint(4) DEFAULT NULL COMMENT '通知類型 1.行為通知 2.平臺(tái)通知',
 `is_read` tinyint(4) DEFAULT NULL COMMENT '是否已讀 1.已讀 2.未讀',
 `status` tinyint(4) DEFAULT '1' COMMENT '1存在 2刪除',
 `created_at` int(11) DEFAULT NULL,
 `updated_at` int(11) DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COMMENT='消息表';


CREATE TABLE `message_read` (
 `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
 `uid` int(11) DEFAULT NULL COMMENT '用戶id',
 `mid` int(11) DEFAULT NULL COMMENT '消息id',
 `created_at` int(11) DEFAULT NULL,
 `updated_at` int(11) DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='平臺(tái)消息通知閱讀記錄表';

以上這篇laravel 實(shí)現(xiàn)根據(jù)字段不同值做不同查詢就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • ThinkPHP模板輸出display用法分析

    ThinkPHP模板輸出display用法分析

    這篇文章主要介紹了ThinkPHP模板輸出display用法,以實(shí)例形式詳細(xì)分析了ThinkPHP使用display調(diào)用各類模板輸出的用法,是非常常見的實(shí)用技巧,需要的朋友可以參考下
    2014-11-11
  • php實(shí)現(xiàn)數(shù)組篩選奇數(shù)和偶數(shù)示例

    php實(shí)現(xiàn)數(shù)組篩選奇數(shù)和偶數(shù)示例

    這篇文章主要介紹了php實(shí)現(xiàn)數(shù)組篩選奇數(shù)和偶數(shù)示例,需要的朋友可以參考下
    2014-04-04
  • thinkPHP3.2實(shí)現(xiàn)分頁(yè)自定義樣式的方法

    thinkPHP3.2實(shí)現(xiàn)分頁(yè)自定義樣式的方法

    這篇文章主要介紹了thinkPHP3.2實(shí)現(xiàn)分頁(yè)自定義樣式的方法,結(jié)合實(shí)例形式分析了thinkPHP3.2針對(duì)底層框架代碼的修改與使用相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • php字符編碼轉(zhuǎn)換之gb2312轉(zhuǎn)為utf8

    php字符編碼轉(zhuǎn)換之gb2312轉(zhuǎn)為utf8

    PHP輸出頁(yè)面時(shí)經(jīng)常有亂碼,怎么辦呢?今天我就提供一個(gè)方法,可以自動(dòng)判斷php字符編碼,把gbk或gb2312編碼的字符串轉(zhuǎn)為utf8 。
    2013-10-10
  • Laravel用戶授權(quán)系統(tǒng)的使用方法示例

    Laravel用戶授權(quán)系統(tǒng)的使用方法示例

    這篇文章主要給大家介紹了關(guān)于Laravel用戶授權(quán)系統(tǒng)使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09
  • php的對(duì)象傳值與引用傳值代碼實(shí)例講解

    php的對(duì)象傳值與引用傳值代碼實(shí)例講解

    這篇文章主要介紹了php的對(duì)象傳值與引用傳值代碼實(shí)例講解,感興趣的同學(xué)可以多多學(xué)習(xí)下
    2021-02-02
  • PHP DataGrid 實(shí)現(xiàn)代碼

    PHP DataGrid 實(shí)現(xiàn)代碼

    最近想做一個(gè)通過(guò)PHP實(shí)現(xiàn)DataGrid功能的東西,這樣可以直接修改數(shù)據(jù)庫(kù)中表的內(nèi)容,而不用開發(fā)【新增數(shù)據(jù)頁(yè)面】,【編輯頁(yè)面】,于是乎在網(wǎng)上找了找,類似的東西也有幾個(gè),開源的、付費(fèi)的都有,不過(guò)基本都是基于MySQL。
    2009-08-08
  • PHP實(shí)現(xiàn)常用排序算法的方法

    PHP實(shí)現(xiàn)常用排序算法的方法

    本文主要介紹了一些常用的排序算法,以及PHP的代碼實(shí)現(xiàn)等,感興趣的朋友跟隨小編一起看看吧
    2020-02-02
  • thinkphp3.2.2實(shí)現(xiàn)生成多張縮略圖的方法

    thinkphp3.2.2實(shí)現(xiàn)生成多張縮略圖的方法

    這篇文章主要介紹了thinkphp3.2.2實(shí)現(xiàn)生成多張縮略圖的方法,通過(guò)調(diào)用ThinkPHP擴(kuò)展包的UploadFile類實(shí)現(xiàn)針對(duì)上傳圖片的縮略圖處理,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-12-12
  • PHP模板引擎Smarty內(nèi)建函數(shù)詳解

    PHP模板引擎Smarty內(nèi)建函數(shù)詳解

    這篇文章主要介紹了PHP模板引擎Smarty內(nèi)建函數(shù)用法,結(jié)合實(shí)例形式分析了smarty中常見的內(nèi)建函數(shù)功能,定義與使用方法,需要的朋友可以參考下
    2016-04-04

最新評(píng)論