簡體   English   中英

laravel如何獲取多個計數查詢?

[英]how do i get multiple count queries with laravel?

我需要一些查詢生成器來獲得如下結果:

select 
A.`idalbum`, A.`title_en` as `title`, 
A.`desc_en` as `description`, A.`cover` as `cover`,
(SELECT COUNT(idgallery) AS gambar FROM gallery WHERE cate='1' AND albumid=A.idalbum) as gambar,
(SELECT COUNT(idgallery) AS videos FROM gallery WHERE cate='2' AND albumid=A.idalbum) as videos,
from `album` as A

我應該使用什么查詢? 以防萬一,我不能使用RAW,因為我需要在laravel Eloquent上進行一些分頁

我從另一個回應中得到了這個答案:

$result = DB::table('album as A')
        ->select("A.idalbum", "A.title_en as title", 
        "A.desc_en as description", "A.cover as cover",
        DB::raw("(SELECT COUNT(idgallery) AS gambar FROM gallery WHERE cate='1' AND albumid=A.idalbum) as gambar"), 
        DB::raw("(SELECT COUNT(idgallery) AS videos FROM gallery WHERE cate='2' AND albumid=A.idalbum) as videos")
        )
        ->orderBy('A.date', 'asc')->paginate($this->perpage);


 return $result;

我應該刪除這個問題嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM