2017-10-26 9 views
0

次のクエリのLaravelの代替クエリは何ですか?替わるLaravelクエリ

SELECT t1.siteName, COALESCE(t2.fee, 0) FROM sites t1 
LEFT JOIN 
(
    SELECT site_id, sum(fee) as fee 
    FROM tickets 
    WHERE ticketdate BETWEEN '2017-01-01' AND '2017-03-31' 
    GROUP BY site_id 
) t2 
ON t1.id = t2.site_id 
ORDER BY t2.fee DESC 
+0

あなたは何を試してみましたか? –

+0

サイトやチケットのように作成されたモデルはありますか?ラーベールのクエリは、データベースに対する未処理クエリーまたはEloquent(モデルの作成が必要)を使用することができます。 – McGo

+0

すべてのサイト名とその合計料金を特定の期間に表示する必要があります。料金はすべてのサイトに対して0で、0になります。正しいsqlクエリがありますが、Laravelでこのクエリを実装する必要があります。 、 サイト: テーブル サイト(ID、サイト名の、のcreated_at、updated_atの) 券(ID、SITE_ID、料金、ticketdate、のcreated_at、updated_atの) モデル:だから、私たちは、クエリの下に与えられたためlaravelで別のクエリを必要としますチケット –

答えて

0
 
We need to show all sites name and their total fee in a given period, when total fee is 0 against any site, it shows 0. we have correct sql query for it, but we need to implement this query in Laravel. So, we need alternate query in laravel for given below query: 

Tables: 
sites(id, siteName, created_at, updated_at) 
tickets(id, site_id, fee, ticketdate, created_at, updated_at) 

Models: 
Site, Ticket