laravel -查询近7月走势图案例
// 获取7月前的时间
$time = date('Y-m',strtotime("-0 year -7 month -0 day" ));
$where['created_at'] = ['>', $time];
// 统计近7月数据
$trend = DB::table('service_orders')
->select(DB::raw('CONCAT(YEAR(created_at),"-",MONTH(created_at)) as day'), DB::raw('sum(pay_price) as price'))
->wheres($where)
->groupBy('day')
->get()
->map(function ($value) {
return (array)$value;
})->toArray(); // 查询近7月的所有年月份
$day = 7 ;
for ($i = $day - 1; 0 <= $i; $i--) {
$result[] = date('Y-n', strtotime('-' . $i . ' month'));
$nums[] = 0;
} // 匹配数据并返回
array_walk($trend, function ($value, $key) use ($result, &$nums) {
$index = array_search($value['day'],$result);
$nums[$index] = $value['price'];
}); $year = $result;
// 处理返回的时间格式
foreach ($year as &$v) {
$v = date('n', strtotime($v)) . '月';
} // 返回7月走势数据
$list['trend'] = [
'month' => $year,
'price' => $nums,
'year' => $result,
];
// 返回数据
returnJson($list); // 走势图

laravel -查询近7月走势图案例的更多相关文章
- MySQL查询近一个月的数据
MySQL查询近一个月的数据 近一个月统计SQL select user_id, user_name, createtime from t_user where DATE_SUB(CURDATE(), ...
- Echarts折线图案例
公司要求做个累计收益图,没用过Echarts,再这里记录一下 html页面 <!DOCTYPE html> <html> <head> <meta chars ...
- WebService学习--股票走势图+天气预报实现
互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取股票数据和天气预报为例进行学习 ...
- !! A股历史平均市盈率走势图
http://value500.com/PE.asp 一. A股历史平均市盈率走势图 *数据来源:上海证券交易所 分享到: 354 - 上海A股 深圳A股更新时间 2017年6月7日 2017年6月7 ...
- Highcharts实现走势图
Highcharts 是一个用纯JavaScript编写的一个图表库, 能够很简单便捷的在web网站或是web应用程序添加有交互性的图表,并且免费提供给个人学习.个人网站和非商业用途使用.HighCh ...
- 一款强大的双色球走势图,助你500W梦想,js+mvc+html
序言 估计每个人都有中500W的梦想,我关注双色球也有一定年数了,可最多中也只有10块钱,这已经算是最大的奖,最近闲来无事,研究下怎么去开发双色球的走势图,觉得还是蛮有意思的,用MVC+JS+HTMl ...
- 【转】使用Python matplotlib绘制股票走势图
转载出处 一.前言 matplotlib[1]是著名的python绘图库,它提供了一整套绘图API,十分适合交互式绘图.本人在工作过程中涉及到股票数据的处理如绘制K线等,因此将matplotlib的使 ...
- 用C#开发的双色球走势图(二)
昨晚由于时间的原因只写了一部分内容,今天将这一部分内容补充完毕,多谢各位园友的支持. 这是用C#开发的双色球走势图(一)新的园友可以看昨晚写的内容,以免脱节.首先回复园友的评论,有说好的有说不好的,本 ...
- 用C#开发的双色球走势图(一)
首先声明,个人纯粹无聊之作,不作商业用途. 我相信每个人都拥有一个梦想那就是有朝一日能中500W,这个也一直是我的梦想,并默默每一期双色球或多或少要贡献自己一点点力量,本人并不属于那种铁杆的彩票迷,每 ...
随机推荐
- socket开发总结
1.connect 阻塞socket connect时会等待返回结果,等于0表示成功,小于0表示失败. 非阻塞socket connect时会立刻返回结果,等于0表示成功,小于0且errno == E ...
- mfc添加自定义事件
1.在对话框的头文件里面添加声明函数: afx_msg void OnStnClickedPicStop(); 2.在对话框的源文件添加 BEGIN_MESSAGE_MAP(CPcEn3dTestDl ...
- linux下安装nexus repository及Intellij Idea集成私有maven
前段日子公司搞java项目,使用nexus repository搭建了私有maven库,现在把原来的私有nuget也迁到nexus repository上了,下面介绍下搭建流程: https://he ...
- Python课程第五天作业
1.利用字典推导式和列表推导式完成数据的相互转化: dic = {'name': 'Owen', 'age': 18, 'gender': '男'} ls = [('name', 'Owen'), ( ...
- Maven 下添加oracle11g的包 报Missing artifact com.oracle:ojdbc6:jar:11.2.0.1.0
Missing artifact com.oracle:ojdbc6:jar:11.2.0.1.0 原因:Oracle 的ojdbc.jar是收费的,所以maven的中央仓库中没有这个资源,只能通过配 ...
- python爬虫爬取京东、淘宝、苏宁上华为P20购买评论
爬虫爬取京东.淘宝.苏宁上华为P20购买评论 1.使用软件 Anaconda3 2.代码截图 三个网站代码大同小异,因此只展示一个 3.结果(部分) 京东 淘宝 苏宁 4.分析 这三个网站上的评论数据 ...
- J Hello word
jave 学习 public class Hello { public static void main (string args []) { int i = 0; for (i = 0; i < ...
- Android 开发 上拉加载更多功能实现
实现思维 开始之前先废话几句,Android系统没有提供上拉加载的控件,只提供了下拉刷新的SwipeRefreshLayout控件.这个控件我们就不废话,无法实现上拉刷新的功能.现在我们说说上拉加载更 ...
- iis7.5 配置伪静态
1)首先新建一个应用程序池,名称任意,比如:nettest,托管管道模式先暂时设置为集成模式,等下面的一系列设置完成之后再设置成经典模式: 2)部署好站点,并将此站点的应用程序池设置为nettest; ...
- flask sqlchemy 多对多的自引用关系定义
多对多的定义可以使用关联表,或者重新定义一个模型,通过模型定义多对多的自引用在flask web开发书里有讲到,这里主要演示用关联表定义的方法. from flask_sqlalchemy impor ...