【问题标题】:Get view, comment, like counts of an article using Laravel5.5 Eloquent Query Builder使用 Laravel5.5 Eloquent Query Builder 获取文章的查看、评论和点赞数
【发布时间】:2018-08-06 08:34:17
【问题描述】:

我有三个表,我想与 SQL 建立关系,但无法做到这一点。 这个概念是获取为一篇文章记录的视图、cmets 和喜欢的数量。所以我有主要的

文章表

arm_articles

文章评论表

arm_article_cmets,

文章浏览量表

arm_article_views

文章点赞表

arm_article_likes

我的雄辩的查询不起作用

DB::table('arm_articles')
    ->join('arm_article_views', function($join) {
        $join->on('arm_articles.article_id', '=', 'arm_article_views.view_article_id');
    })
    ->join('arm_article_likes', function($join) {
        $join->on('arm_articles.article_id', '=', 'arm_article_likes.liked_article_id');
    })
    ->join('arm_article_comments', function($join) {
        $join->on('arm_articles.article_id', '=', 'arm_article_comments.comment_article_id');
    })->groupBy('arm_articles.article_id')
    ->select('arm_articles.article_topic','arm_articles.article_id')
    ->addSelect(DB::raw('COUNT(arm_article_views.view_article_id) as TotalViews'))
    ->addSelect(DB::raw('COUNT(arm_article_likes.liked_article_id) as TotalLikes'))
    ->addSelect(DB::raw('COUNT(arm_article_comments.comment_article_id) as TotalComments'))
    ->where('arm_articles.article_contributor_id','=',$contributor_id)
    ->get()

此命令不返回任何错误,而是创建了一个不正确的表。我不能用它


文章表 arm_articles

关键领域

arm_articles.id, arm_articles.article_id, arm_articles.article_contributor_id, arm_articles.article_active


文章查看表 arm_article_views

关键领域

arm_article_views.view_article_id 加入 arm_articles.article_id


文章评论表 arm_article_comments

关键领域

arm_article_comments.comment_article_id 加入 arm_articles.article_id


像表格一样的文章 arm_article_likes

关键领域

arm_article_likes.liked_article_id 加入 arm_articles.article_id


我想从我的 SQL 中创建一个看起来像这样的新表 new table

请协助正确的命令以正确的数据形成新表,将 arm_articles 表与 arm_article_likes、arm_article_views 和 arm_article_cmets 相关联。

问候。

【问题讨论】:

    标签: php sql laravel eloquent


    【解决方案1】:

    您可以建立对关系至关重要的关系。您可以在此处查看如何完成此操作:https://stackoverflow.com/a/43873577/1561929

    【讨论】:

    • 你发给我的链接和这个完全不同。我需要的是一个 SQL 来获取每篇文章的观看次数、点赞数和评论数
    猜你喜欢
    • 2019-01-26
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    • 2020-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    相关资源
    最近更新 更多