public function userInfluenceCollect(Request $request)
{
$types = ['logins', "checkins", "rewards", "likes", "fans", "FCCcy", "FCC",
"forwards", "friends", "deduct"];
$titles = ['每日登陆', '签到', '打赏', '点赞', '粉丝', 'FCCcy兑换', 'FCC兑换',
'转发', '好友', '惩罚'];
$user = $request->user();
$data['query'] = DB::table('influence_logs')
->where('owner_id', $user->id)
->select(DB::raw('sum(type*amount) as user_amount,target_type'))
->groupBy('target_type')
->get(); $data['today'] = DB::table('influence_logs')
->where('owner_id', $user->id)
->whereDate('created_at', date('Y-m-d', time()))
->select(DB::raw('sum(type*amount) as today_amount,target_type'))
->groupBy('target_type')
->get();
$arr = [];
foreach ($types as $key => $value) { $single["target_type"] = $value;
$single['title'] = $titles[$key]; //总影响力
$single['user_amount'] = 0;
foreach ($data['query'] as $user_key => $user_value) {
if ($user_value->target_type == $value) {
$single["user_amount"] = $user_value->user_amount;
break;
}
} //今日影响力
$single['today_amount'] = 0;
foreach ($data['today'] as $today_key => $today_value) {
if ($today_value->target_type == $value) {
$single["today_amount"] = $today_value->today_amount;
break;
}
}
$arr[] = $single;
}
return response()->json($arr, 200);
}

laravel 汇总数据的更多相关文章

  1. SQLSERVER 使用 ROLLUP 汇总数据,实现分组统计,合计,小计

    表结构: CREATE TABLE [dbo].[Students]( ,) NOT NULL, ) NULL, [Sex] [int] NOT NULL, ) NULL, ) NULL, , ) N ...

  2. 一个有趣的SQL Server 层级汇总数据问题

        看SQL Server大V宋大侠的博客文章,发现了一个有趣的sql server层级汇总数据问题.          具体的问题如下:     parent_id emp_id emp_nam ...

  3. SQL学习之汇总数据之聚集函数

    一. 1.我们经常需要汇总数据而不用把他们实际检索出来,为此SQL提供了专门的函数,以便于分析数据和报表生成,这些函数的功能有: (1)确定表中行数(或者满足单个条件或多个条件或包含某个特定值的行数) ...

  4. MySQL汇总数据

    汇总数据 有时,数据本身是不上台面的操作数据表.但在摘要表中的数据.例如 数据的一列的平均值.极大值.至少值等一下. 对于这些频繁使用的数据的处理的概要,MySQL它提供了一个函数来处理. SQL聚集 ...

  5. 介绍一种非常好用汇总数据的方式GROUPING SETS

    介绍 对于任何人而言,用T-SQL语句来写聚会查询都是工作中重要的一环.我们大家也都很熟悉GROUP BY子句来实现聚合表达式,但是如果打算在一个结果集中包含多种不同的汇总结果,可能会比较麻烦.我将举 ...

  6. laravel 查询数据返回的结果

    laravel查询数据返回的结果 在插入数据库的时候,发现查询数据返回的结果是一个对象;即使是空数据 返回的不是true或者false 那么要判断该结果是否查询有结果 该如果呢? 学习源头: http ...

  7. sql的一些知识_函数_汇总数据

    汇总数据 avg()---------求平均数 值得注意的是:avg()只能用于一个列的平均值查询,多个列的平均值请使用多个avg() avg()忽略null值 count()-------计数(指定 ...

  8. pandas_使用透视表与交叉表查看业绩汇总数据

    # 使用透视表与交叉表查看业绩汇总数据 import pandas as pd import numpy as np import copy # 设置列对齐 pd.set_option("d ...

  9. 【MySQL】汇总数据 - avg()、count()、max()、min()、sum()函数的使用

    第12章 汇总数据 文章目录 第12章 汇总数据 1.聚集函数 1.1.AVG()函数 avg() 1.2.COUNT()函数 count() 1.3. MAX()函数 max() 1.4.MIN() ...

随机推荐

  1. h5-canvas 像素操作

    ###1.得到场景像素数据 getImageData():获得一个包含画布场景像素数据的ImageData对象,它代表了画布区域的对象数据 ctx.getImageData(sx,sy,sw,sh) ...

  2. 部署alinode监控线上应用

    参考: https://segmentfault.com/a/1190000013089124

  3. Django初印象之视图(view)

    一.view的初印象 一个视图函数(类),简称视图.我们发起web请求时,返回的web响应.[大家约定成俗将视图放置在项目(project)或应用程序(app)目录中的名为views.py的文件中.] ...

  4. [SimplePlayer] 8. 音视频同步

    音频与视频在播放当中可能会由于种种原因(如:音视频并非在同一时间开始播放,或视频由于解码任务繁重导致输出图像延迟等)导致音频与视频的播放时间出现偏差,这种就是音视频的同步问题,本文会对音视频同步进行讨 ...

  5. win10应用商店打不开,错误代码0x80131500

    我也突然遇到这个问题,一开始找各种方法也解决不了.然后在外网找到方法. 很多人只是把代理开了,只要关了就可以了.这点不累述,都会提到. 我的win10应用商店有两个错误代码0x80131500和0x8 ...

  6. [NOIp2016] 换教室

    题目类型:期望\(DP\) 传送门:>Here< 题意:现有\(N\)个时间段,每个时间段上一节课.如果不申请换教室,那么时间段\(i\)必须去教室\(c[i]\)上课,如果申请换课成功, ...

  7. mybatis操作mysql的奇淫技巧总结(代码库)

    1.添加公共sql代码段 使用<sql> 和 <include> 标签 <sql id="userSubassemblyRecordParam"> ...

  8. 基于Matlab实现多次最佳一致的函数逼近(类似求渐进函数)

    %%%做系统识别很重要,方法上完全符合系统识别最基础的理论 function [sun]=main(n) fplot(,],'r'); x=ones(n+,); :n+ x(j+)=cos(pi*(n ...

  9. echarts 修改y轴刻度间隔问题

    其中min.max可以自定义可以动态获取数据 yAxis : [ {                        type : 'value',                        axi ...

  10. JavaProperties类、序列化流与反序列化流、打印流、commons-IO整理

    Properties类 Properties 类表示了一个持久的属性集.Properties 可保存在流中或从流中加载.属性列表中每个键及其对应值都是一个字符串. 特点: 1.Hashtable的子类 ...