亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

mysql 查詢

標簽:
MySQL
有个新需求,

一张表有两个相同的商品排序信息,不同的是 type值和sort不同,如果有type等于1那就连接type等于一的那条商品信息进行排序,如果没有等于0的那就连排序等于0的进行排序

下面是代码,亲测有效
  $resultGoods = ProductSales::with('homeGood')
//            ->leftJoin('goods as g','g.goodsId','=','productId')
            ->leftJoin('goods as g',function ($join){
                $join->on('g.goodsId','=','productId')
                    ->where('g.goodsStatus','=',1)
                    ->where('g.isSale','=',1)
                    ->where('g.dataFlag','=',1);
            })
            ->join('good_recommend as gr',function($join){
                $join->on('gr.goods_id','=','g.goodsId')
                    ->where(['gr.status'=>0,'gr.type'=>DB::raw("(SELECT DISTINCT CONCAT(IF(EXISTS(SELECT * FROM tgs_good_recommend WHERE goods_id=productId AND TYPE=1 and status=0),1,0)) AS c FROM tgs_good_recommend)")]);
            }, null,null,'left')
            ->where('product_sales.status',1)
            ->where('saleStartDatetime', '>', $saleStarTime)
            ->where('saleStartDatetime', '<=', $endTime)
            ->orderBy('saleEndDatetime', 'desc')
            ->orderBy('sort','desc')
            ->groupBy('productId')
            ->paginate($size, ['productId', 'currentSalesVolume', 'saleStartDatetime', 'saleEndDatetime', 'salesPeriodNumber','g.shopId','gr.sort'], 'page', $page);

作者:浪里小黑龙

原文链接:https://www.cnblogs.com/gjclr/p/10250409.html

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消