PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php-雄辩的查询-多个列上的COUNT和SUM大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试使用这个问题的知识
question already answered

在我的数据透视表中
user_attitudes我有两列:

>重要性(用户声明自己的兴趣(0,3))
>态度(基本上这是一个赞成和反对的态度,值是’-1′,’0’和’1′)

我现在所拥有的:

我可以打印由selectRaw创建的值排序的Entity列表.

我需要的:

我希望打印以下所述的所有四个值,无论使用哪个值进行排序

我希望使用AJAX创建多个排序开关,以便用户可以更改排序.

对于我需要输出的每个计数,最多四个:
总重要性得分:

SUM(user_attitudes.importance) AS importance

显示有多少用户正在观察该实体:

COUNT(user_attitudes.importance) AS observing

赞成和反对的总数:

SUM(user_attitudes.attitude) AS karma

下调或赞成某实体的用户数:

COUNT(user_attitudes.importance) AS 

如何展开以下查询
在此查询中,我可以在哪里查询上述额外数字?

$rank_entities = Entity::leftJoin('user_attitudes', function($q){
                $q->on('entity_id', '=', 'entities.id');
                $q->where('item_type', '=', 'entity');
            })
            ->selectRaw('entities.*, SUM(user_attitudes.importance) AS importance')
            ->groupBy('entities.id')
            ->orderBy('importance', 'desc')
            ->take(6)
            ->get(); 

我试图添加一个

->selectRaw('entities.*, SUM(user_attitudes.attitude) AS karma')

但似乎只有一个selectRaw可以创建可打印的变量
有任何想法吗?谢谢.

解决方法:

只需将它们添加到当前的selectRaw?在这里,我使用数组来使其更加干净:

$selects = array(
    'entities.*',
    'SUM(user_attitudes.importance) AS importance',
    'COUNT(user_attitudes.importance) AS observing',
    'SUM(user_attitudes.attitude) AS karma'
);

// query ...

->selectRaw(implode(',', $selects))

大佬总结

以上是大佬教程为你收集整理的php-雄辩的查询-多个列上的COUNT和SUM全部内容,希望文章能够帮你解决php-雄辩的查询-多个列上的COUNT和SUM所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: