laravel按天、按小时,查询数据的实例


Posted in PHP onOctober 09, 2019

使用laravel做后台数据统计的时候,需要查询每天的注册量之类的数据

这时候如果直接用created_at分组,是不好用的。

1、所以本文解决这个查询应该怎么写。

2、并且推荐一个时间选择插件,因为统计中一定会用到,本周数据、本月、本季度、上个月。。。。

按天分组数据:

Event::where('created_at','>',Carbon::parse($request->start_date))
->where('created_at','<',Carbon::parse($request->end_date))
//两个where限制开始结束时间
->groupBy('date')
->get([DB::raw('DATE(created_at) as date'),DB::raw('COUNT(*) as value')])
->toArray();

如果想按小时分组所有查询出来的数据:

Event::where('created_at','>',Carbon::parse('2017-01-01'))
->where('created_at','<',Carbon::parse('2017-11-09'))
->groupBy('day')
->get([
//通过date_format()来格式化created_at字段
 DB::raw('DATE_FORMAT(created_at,\'%H\') as day'),
 DB::raw('COUNT(*) as value')])
->toArray()

分享一个时间选择插件

这是官网地址

我把我改好的代码附上:

$(function () {
/*设置开始结束时间*/
 var start = moment().subtract(30, 'days');
 var end = moment().subtract(-1,'day');
 var datas = {};
/*选择之后,将时间重新赋值input*/
 function cb(start, end) {
  $('#reportrange span').html(start.format('YYYY/MM/DD') + ' - ' + end.format('YYYY/MM/DD'));
 }
 $('#reportrange').daterangepicker({
 startDate: start,
 endDate: end,
 /*本地化数据*/
 locale: {
  "format": "YYYY/MM/DD",
  "separator": " - ",
  "applyLabel": "应用",
  "cancelLabel": "关闭",
  "fromLabel": "From",
  "toLabel": "至",
  "customRangeLabel": "自定义",
  "weekLabel": "W",
  "daysOfWeek": ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"
  ],
  "monthNames": ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"
  ],
  "firstDay": 1
 },
 ranges: {
  '今天': [moment(), moment().subtract(-1, 'days')],
  '昨天': [moment().subtract(1, 'days'), moment()],
  '前7天': [moment().subtract(7, 'days'), moment()],
  '前30天': [moment().subtract(30, 'days'), moment()],
  '本月': [moment().startOf('month'), moment().endOf('month').subtract(-1,'day')],
  '上月': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month').subtract(-1,'day')],
  '所有': [moment("2017-09-25"), moment().subtract(-1, 'days')]
 }
}, cb);

 cb(start, end);
});

超级好用,结合echart

在用echart的map时候,因为地图权限没有,所以要加载百度地图。这个坑另开帖子记录吧。

以上这篇laravel按天、按小时,查询数据的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
分页详解 从此分页无忧(PHP+mysql)
Nov 23 PHP
php中获得视频时间总长度的另一种方法
Sep 15 PHP
thinkphp3.2.2前后台公用类架构问题分析
Nov 25 PHP
ThinkPHP中数据操作案例分析
Sep 27 PHP
为你总结一些php系统类函数
Oct 21 PHP
ThinkPHP使用Smarty第三方插件方法小结
Mar 19 PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
Jul 28 PHP
php生成0~1随机小数的方法(必看)
Apr 05 PHP
PHP实现mysqli批量执行多条语句的方法示例
Jul 22 PHP
PHP检查网站是否宕机的方法示例
Jul 24 PHP
php实现JWT(json web token)鉴权实例详解
Nov 05 PHP
PHP变量的作用范围实例讲解
Dec 22 PHP
laravel多条件查询方法(and,or嵌套查询)
Oct 09 #PHP
Laravel find in set排序实例
Oct 09 #PHP
对laravel in 查询的使用方法详解
Oct 09 #PHP
laravel实现查询最后执行的一条sql语句的方法
Oct 09 #PHP
Laravel使用原生sql语句并调用的方法
Oct 09 #PHP
Laravel 将数据表的数据导出,并生成seeds种子文件的方法
Oct 09 #PHP
laravel执行php artisan migrate报错的解决方法
Oct 09 #PHP
You might like
Thinkphp中Create方法深入探究
2014/06/16 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
2016/09/26 PHP
Swoole 5将移除自动添加Event::wait()特性详解
2019/07/10 PHP
laravel实现按月或天或小时统计mysql数据的方法
2019/10/09 PHP
详解no input file specified 三种解决方法
2019/11/29 PHP
PHP全局使用Laravel辅助函数dd
2019/12/26 PHP
理解Javascript_10_对象模型
2010/10/16 Javascript
Jquery chosen动态设置值实例介绍
2013/08/08 Javascript
使用JS CSS去除IE链接虚线框的三种方法
2013/11/14 Javascript
jquery实现checkbox全选全不选的简单实例
2013/12/31 Javascript
JavaScript中数据结构与算法(三):链表
2015/06/19 Javascript
JavaScript ES5标准中新增的Array方法
2016/06/28 Javascript
面包屑导航详解
2017/12/07 Javascript
AngularJS实现的简单拖拽功能示例
2018/01/02 Javascript
vue.js实现格式化时间并每秒更新显示功能示例
2018/07/07 Javascript
Node.js操作系统OS模块用法分析
2019/01/04 Javascript
解决layer.confirm选择完之后消息框不消失的问题
2019/09/16 Javascript
vue+springboot图片上传和显示的示例代码
2020/02/14 Javascript
node.js如何操作MySQL数据库
2020/10/29 Javascript
python中将一个全部为int的list 转化为str的list方法
2018/04/09 Python
python微信公众号之关键词自动回复
2018/06/15 Python
python高斯分布概率密度函数的使用详解
2019/07/10 Python
python 引用传递和值传递详解(实参,形参)
2020/06/05 Python
如何基于Python爬取隐秘的角落评论
2020/07/02 Python
前端使用canvas生成盲水印的加密解密的实现
2020/12/16 HTML / CSS
美国男士西装打折店:Jos. A. Bank
2017/11/13 全球购物
自我鉴定范文200字
2013/10/02 职场文书
分厂厂长岗位职责
2013/12/29 职场文书
旷课检讨书3000字
2014/02/04 职场文书
大龄毕业生求职别忘职业规划
2014/03/11 职场文书
村委会贫困证明范文
2014/09/21 职场文书
会计电算化实训报告
2014/11/04 职场文书
幼儿园2015年度工作总结
2015/04/01 职场文书
2016年度员工工作表现评语
2015/12/02 职场文书
golang 实现Location跳转方式
2021/05/02 Golang
vue组件vue-esign实现电子签名
2022/04/21 Vue.js