pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

        • <bdo id='B3j22'></bdo><ul id='B3j22'></ul>
        <tfoot id='B3j22'></tfoot><legend id='B3j22'><style id='B3j22'><dir id='B3j22'><q id='B3j22'></q></dir></style></legend>

        <small id='B3j22'></small><noframes id='B3j22'>

        <i id='B3j22'><tr id='B3j22'><dt id='B3j22'><q id='B3j22'><span id='B3j22'><b id='B3j22'><form id='B3j22'><ins id='B3j22'></ins><ul id='B3j22'></ul><sub id='B3j22'></sub></form><legend id='B3j22'></legend><bdo id='B3j22'><pre id='B3j22'><center id='B3j22'></center></pre></bdo></b><th id='B3j22'></th></span></q></dt></tr></i><div class="a2ka0gc" id='B3j22'><tfoot id='B3j22'></tfoot><dl id='B3j22'><fieldset id='B3j22'></fieldset></dl></div>
      1. 在laravel eloquent中從數據透視表中獲取計數

        Getting count from pivot table in laravel eloquent(在laravel eloquent中從數據透視表中獲取計數)

            • <bdo id='S3s9o'></bdo><ul id='S3s9o'></ul>
              <tfoot id='S3s9o'></tfoot>

                <small id='S3s9o'></small><noframes id='S3s9o'>

                <i id='S3s9o'><tr id='S3s9o'><dt id='S3s9o'><q id='S3s9o'><span id='S3s9o'><b id='S3s9o'><form id='S3s9o'><ins id='S3s9o'></ins><ul id='S3s9o'></ul><sub id='S3s9o'></sub></form><legend id='S3s9o'></legend><bdo id='S3s9o'><pre id='S3s9o'><center id='S3s9o'></center></pre></bdo></b><th id='S3s9o'></th></span></q></dt></tr></i><div class="oamcsu2" id='S3s9o'><tfoot id='S3s9o'></tfoot><dl id='S3s9o'><fieldset id='S3s9o'></fieldset></dl></div>
                • <legend id='S3s9o'><style id='S3s9o'><dir id='S3s9o'><q id='S3s9o'></q></dir></style></legend>
                    <tbody id='S3s9o'></tbody>
                  本文介紹了在laravel eloquent中從數據透視表中獲取計數的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  我有訂單和產品的多對多關系.

                  I have a many to many relationship for orders and products.

                  <?php
                  class Order extends Eloquent {
                  
                      public function user()
                      {
                          return $this->belongsTo('User');
                      }
                  
                      public function products()
                      {
                          return $this->belongsToMany('Product');
                      }
                   }
                   ?>
                  
                  
                  <?php
                  class Product extends Eloquent {
                  
                      public function orders()
                      {
                          return $this->belongsToMany('Order');
                      }
                  
                   }
                  ?>
                  

                  需要獲取每個產品的訂購次數.在mysql中,這個任務可以通過使用下面的查詢來實現

                  Need to fetch the number of times each product is ordered.In mysql,this task can be achieved by using the following query

                  SELECT products.id, products.description, count( products.id )
                  FROM products
                  INNER JOIN order_product ON products.id = order_product.product_id
                  INNER JOIN orders ON orders.id = order_product.order_id
                  GROUP BY product_id
                  LIMIT 0 , 30
                  

                  以上查詢結果如下:-

                  id  description   count(products.id)    
                   1     Shoes          3
                   2     Bag            2
                   3     Sun glasses    2
                   4     Shirt          2
                  

                  如何使用 laravel eloquent 完成這項任務(不使用查詢構建器)????如何使用 laravel eloquent 獲取每個產品的訂購次數??

                  How this task can be achieved using laravel eloquent (without using query builder)????How can i fetch the number of times each product is ordered using laravel eloquent??

                  推薦答案

                  注意 Eloquent 在底層使用 QueryBuilder,所以 Laravel 中沒有這樣的東西,就像'查詢雄辯而不使用查詢構建器'.

                  Mind that Eloquent uses QueryBuilder under the hood, so there is no such thing in Laravel, like 'query eloquent without using query builder'.

                  這就是你所需要的:

                  // additional helper relation for the count
                  public function ordersCount()
                  {
                      return $this->belongsToMany('Order')
                          ->selectRaw('count(orders.id) as aggregate')
                          ->groupBy('pivot_product_id');
                  }
                  
                  // accessor for easier fetching the count
                  public function getOrdersCountAttribute()
                  {
                      if ( ! array_key_exists('ordersCount', $this->relations)) $this->load('ordersCount');
                  
                      $related = $this->getRelation('ordersCount')->first();
                  
                      return ($related) ? $related->aggregate : 0;
                  }
                  

                  這將讓您利用預先加載的優勢:

                  This will let you take advantage of eager loading:

                  $products = Product::with('ordersCount')->get();
                  
                  // then for each product you can call it like this
                  $products->first()->ordersCount; // thanks to the accessor
                  

                  閱讀更多關于 Eloquent accessors &變異子,

                  以及動態屬性,上面的訪問器模仿了這些行為.

                  and about dynamic properties, of which behaviour the above accessor mimics.

                  當然,您可以使用簡單的連接來獲得與示例中完全相同的查詢.

                  Of course you could use simple joins to get exactly the same query like in you example.

                  這篇關于在laravel eloquent中從數據透視表中獲取計數的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  MySQLi prepared statement amp; foreach loop(MySQLi準備好的語句amp;foreach 循環)
                  Is mysqli_insert_id() gets record from whole server or from same user?(mysqli_insert_id() 是從整個服務器還是從同一用戶獲取記錄?)
                  PHP MySQLi doesn#39;t recognize login info(PHP MySQLi 無法識別登錄信息)
                  mysqli_select_db() expects exactly 2 parameters(mysqli_select_db() 需要 2 個參數)
                  Php mysql pdo query: fill up variable with query result(Php mysql pdo 查詢:用查詢結果填充變量)
                  MySQLI 28000/1045 Access denied for user #39;root#39;@#39;localhost#39;(MySQLI 28000/1045 用戶“root@“localhost的訪問被拒絕)
                  <legend id='ooHfR'><style id='ooHfR'><dir id='ooHfR'><q id='ooHfR'></q></dir></style></legend>
                    <bdo id='ooHfR'></bdo><ul id='ooHfR'></ul>

                          <small id='ooHfR'></small><noframes id='ooHfR'>

                        • <tfoot id='ooHfR'></tfoot>

                          • <i id='ooHfR'><tr id='ooHfR'><dt id='ooHfR'><q id='ooHfR'><span id='ooHfR'><b id='ooHfR'><form id='ooHfR'><ins id='ooHfR'></ins><ul id='ooHfR'></ul><sub id='ooHfR'></sub></form><legend id='ooHfR'></legend><bdo id='ooHfR'><pre id='ooHfR'><center id='ooHfR'></center></pre></bdo></b><th id='ooHfR'></th></span></q></dt></tr></i><div class="0s2ims0" id='ooHfR'><tfoot id='ooHfR'></tfoot><dl id='ooHfR'><fieldset id='ooHfR'></fieldset></dl></div>
                              <tbody id='ooHfR'></tbody>
                          • 主站蜘蛛池模板: 高压负荷开关-苏州雷尔沃电器有限公司 | 北京环球北美考试院【官方网站】|北京托福培训班|北京托福培训 | 山西3A认证|太原AAA信用认证|投标AAA信用证书-山西AAA企业信用评级网 | 石英粉,滑石粉厂家,山东滑石粉-莱州市向阳滑石粉有限公司 | 杭州荣奥家具有限公司-浙江办公家具,杭州办公家具厂 | 磁力加热搅拌器-多工位|大功率|数显恒温磁力搅拌器-司乐仪器官网 | 膜结构车棚|上海膜结构车棚|上海车棚厂家|上海膜结构公司 | 都江堰招聘网-都江堰人才网 都江堰人事人才网 都江堰人才招聘网 邢台人才网_邢台招聘网_邢台123招聘【智达人才网】 | 神超官网_焊接圆锯片_高速钢锯片_硬质合金锯片_浙江神超锯业制造有限公司 | 冻干机(冷冻干燥机)_小型|实验型|食品真空冷冻干燥机-松源 | 千斤顶,液压千斤顶-力良企业,专业的液压千斤顶制造商,shliliang.com | 超声波成孔成槽质量检测仪-压浆机-桥梁预应力智能张拉设备-上海硕冠检测设备有限公司 | 济南货架定做_仓储货架生产厂_重型货架厂_仓库货架批发_济南启力仓储设备有限公司 | 防爆正压柜厂家_防爆配电箱_防爆控制箱_防爆空调_-盛通防爆 | 粉末冶金-粉末冶金齿轮-粉末冶金零件厂家-东莞市正朗精密金属零件有限公司 | 超细|超微气流粉碎机|气流磨|气流分级机|粉体改性机|磨粉机|粉碎设备-山东埃尔派粉体科技 | 南京PVC快速门厂家南京快速卷帘门_南京pvc快速门_世界500强企业国内供应商_南京美高门业 | 广州/东莞小字符喷码机-热转印打码机-喷码机厂家-广州瑞润科技 | 上海物流公司,上海货运公司,上海物流专线-优骐物流公司 | 电位器_轻触开关_USB连接器_广东精密龙电子科技有限公司 | 不锈钢发酵罐_水果酒发酵罐_谷物发酵罐_山东誉诚不锈钢制品有限公司 | 耐压仪-高压耐压仪|徐吉电气| 智慧物联网行业一站式解决方案提供商-北京东成基业 | 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 | 地磅-地秤-江阴/无锡地磅-江阴天亿计量设备有限公司_ | 高压油管,液压接头,液压附件-烟台市正诚液压附件 | 精密模具加工制造 - 富东懿| 食品无尘净化车间,食品罐装净化车间,净化车间配套风淋室-青岛旭恒洁净技术有限公司 | 泰国专线_泰国物流专线_广州到泰国物流公司-泰廊曼国际 | 博医通医疗器械互联网供应链服务平台_博医通 | 精密机械零件加工_CNC加工_精密加工_数控车床加工_精密机械加工_机械零部件加工厂 | 小型手持气象站-空气负氧离子监测站-多要素微气象传感器-山东天合环境科技有限公司 | 两头忙,井下装载机,伸缩臂装载机,30装载机/铲车,50装载机/铲车厂家_价格-莱州巨浪机械有限公司 | 穿线管|波纹穿线管|包塑金属软管|蛇皮管?闵彬专注弱电工程? | 深圳货架厂_仓库货架公司_重型仓储货架_线棒货架批发-深圳市诺普泰仓储设备有限公司 | 非小号行情 - 专业的区块链、数字藏品行情APP、金色财经官网 | 卧涛科技有限公司科技项目申报公司|高新技术企业申报|专利申请 | 食药成分检测_调料配方还原_洗涤剂化学成分分析_饲料_百检信息科技有限公司 | 工业电炉,台车式电炉_厂家-淄博申华工业电炉有限公司 | 泵阀展|阀门展|水泵展|流体机械展 -2025上海国际泵管阀展览会flowtech china | 小型单室真空包装机,食品单室真空包装机-百科 |