私はLeftJoinで作業していましたが、どうしたらいいのでしょうか。Laravel 5.5のLeftJoinに別のテーブルを含めて
私が持っているもの:
Table 1: Blog_Category
Contains: `category_id`, `name`
Table 2: Blog
Contains: `blog_id`, `category_id`, `title` .... etc.
私が建てる何
が、動作していない:
public static function ShowAll() {
return self::leftJoin('Blog', 'Blog_Category.category_id', '=', 'Blog.title')
->selectRaw('Blog_Category.*, count(Blog.blog_id) as Counts')
->groupBy('Blog_Category.category_id')
->get();
}
何私が取得したいことはcategory_id
、name
、COUNT(含まblog_idをカウントしています現在category_id
)
1つの言葉では、名前の横にカテゴリの数を取得したいと思います。 ありがとうございました!
EDIT:実際には、私はJoinをまったく必要としないことを実感しました。私は関数にこのSQLを行う必要があります。
SELECT blog_category.category_id AS id,
blog_category.name AS name,
(SELECT COUNT(*) FROM blog WHERE blog.category_id = blog_category.category_id) AS count
FROM blog_category;
あなたが雄弁またはクエリビルダを使用していますか? –
私は本当によく分かりません。この関数はModelクラスで次のようになります:protected $ table = 'blog_category'; – Nicox
実際に私は参加する必要はありません、投稿を読む編集 – Nicox