關於Laravel多個條件的關聯查詢問題 ?

PHP中文网
發布: 2023-03-01 08:00:01
原創
4510 人瀏覽過

關於Laravel多個條件的關聯查詢問題:

order 訂單表: _id

訂單號碼
  • paid_date

    付費時間
  • paid_date

    付款時間
  • order_product
  • 訂單產品表:

ff5 訂單號,外鍵

  • product_name

    名稱

  • product_number

    編號

  • quantity

    數量

  • Laravel Eloquent ORM 實作以下原生SQL:
  • order - 1:n - order_product
    登入後複製
    手冊看了幾次,嘗試著做,但目前只透過whereHas 實現B.product_name like 這部分的條件,當兩個表都存在條件的時候,實在是做不出來。 望 Laravel 前輩們指點一下,謝謝!

  • PS. 補充:

    目前是針對列表頁做篩選檢索,存在 paginate 的需求。

解決方法:

select * from order as A inner join order_product as B on A.order_id=B.fk_order_id 
where (A.paid_date between '2016-01-01' and '2016-09-01') and B.product_name like '%Apple iPhone%'
登入後複製
class Order extends Model
{
    public function scopeProducts($query)
    {
        return $query->join('order_product', function($join) {
            $join->on('order.order_id', '=', 'order_product.fk_order_id');
        });
    }
}
登入後複製

以上就是關於Laravel多個條件的關聯查詢問題 的內容,更多相關內容請關注PHP中文網(www.php.cn)!

相關文章:
Laravel 關聯查詢只取得管理對象的部分資料


laravel 關聯查詢問題

laravel 關聯查詢文章和文章作者

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板