mysql 生成连续日期及变量赋值


Posted in MySQL onMarch 20, 2022

1、生产连续日期

说明:主要作用于一些统计数据,来根据时间顺序进行显示;
假如数据库数据有隔天数据,偏偏统计又需要每天的都显示,即便是0,那就要生成一个时间表,来使用;

查询数据库数据:

SELECT
        DATE_FORMAT( create_time, '%Y-%m-%d' ) AS date,
        COUNT(1) AS numb
FROM
    qc_task 
    WHERE
    create_time>= DATE_SUB(CURDATE(),INTERVAL 1 MONTH) and
    department_id IN ( SELECT id FROM `vigilante_jinan`.`qc_department` WHERE `area_code` = (@dep_BH) AND `status` = '1' AND dept_level >= (@dep_DJ)) 
    GROUP BY DATE_FORMAT( create_time, '%Y-%m-%d' )

隔天时出数据:

mysql 生成连续日期及变量赋值

这样是不是就不好看了,如果非要说加个order by 1 desc 排一下,也可以…
但是就算排出来,时间也是不连贯的;

生成最近7天的日期:

// 方法笨,但还是有效的
select DATE_FORMAT(SUBDATE(NOW(), interval (timeList.sj*1460) MINUTE),'%Y-%m-%d') as 'datetime' from 
 (SELECT @num:=@num+1 as sj from 
            (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7) t, 
           -- (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7) t1,  -- 假如嫌弃生成的少,打来这个就行
            (SELECT @num:=0) y) as timeList

生成的时间:

mysql 生成连续日期及变量赋值

生成后使用:

-- 生成后左右链接即可,但主表要为时间表
SELECT f.datetime, t.numb FROM 
(SELECT
        DATE_FORMAT( create_time, '%Y-%m-%d' ) AS date,
        COUNT(1) AS numb
FROM
    qc_task 
    WHERE
    create_time>= DATE_SUB(CURDATE(),INTERVAL 1 MONTH) and
    department_id IN ( SELECT id FROM `vigilante_jinan`.`qc_department` WHERE `area_code` = (@dep_BH) AND `status` = '1' AND dept_level >= (@dep_DJ)) 
    GROUP BY DATE_FORMAT( create_time, '%Y-%m-%d' )) t
right join 
(select DATE_FORMAT(SUBDATE(NOW(), interval (timeList.sj*1460) MINUTE),'%Y-%m-%d') as 'datetime' from 
 (SELECT @num:=@num+1 as sj from 
            (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7) t, 
            (SELECT @num:=0) y) as timeList) f  on t.date = f.datetime ;
            

使用后效果:

mysql 生成连续日期及变量赋值

我这里是数据库没有数据…所以看不到有数量显示

2、变量赋值

看到第一个里面 @符号很多是吗,那些都是变量,如果把查询语句放进去,整个查询语句就显得太臃肿了,会很长…所以有些东西可以拆分出去;

比如在查询数据库语句中的:

mysql 生成连续日期及变量赋值

来看下他们的真面目:

#  查询部门区域编号
SELECT @dep_BH:=(SELECT area_code FROM qc_department WHERE dept_name = "历下区");
#  查询部门等级
SELECT @dep_DJ:=(SELECT dept_level FROM qc_department WHERE dept_name = "历下区");

到此这篇关于mysql 生成连续日期及变量赋值的文章就介绍到这了,更多相关mysql 连续日期与变量赋值内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
MySQL性能压力基准测试工具sysbench的使用简介
Apr 21 MySQL
MySQL kill不掉线程的原因
May 07 MySQL
mysql 8.0.24 安装配置方法图文教程
May 12 MySQL
详解MySQL中的主键与事务
May 27 MySQL
mysql 带多个条件的查询方式
Jun 05 MySQL
MySQL系列之十一 日志记录
Jul 02 MySQL
MySQL 那些常见的错误设计规范,你都知道吗
Jul 16 MySQL
MySQL去除重叠时间求时间差和的实现
Aug 23 MySQL
SQL实战演练之网上商城数据库商品类别数据操作
Oct 24 MySQL
MySQL创建表操作命令分享
Mar 25 MySQL
mysql查询结果实现多列拼接查询
Apr 03 MySQL
MySQL 数据表操作
May 04 MySQL
MySQL派生表联表查询实战过程
MySQL学习之基础命令实操总结
Mar 19 #MySQL
MySQL学习之基础操作总结
Mar 19 #MySQL
Pycharm远程调试和MySQL数据库授权问题
Mar 18 #MySQL
MySQL 主从复制数据不一致的解决方法
浅谈redis的过期时间设置和过期删除机制
MySQL读取JSON转换的方式
Mar 18 #MySQL
You might like
php检测iis环境是否支持htaccess的方法
2014/02/18 PHP
php简单实现屏蔽指定ip段用户的访问
2015/04/29 PHP
PHP抓取网页、解析HTML常用的方法总结
2015/07/01 PHP
joomla实现注册用户添加新字段的方法
2016/05/05 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
jQuery老黄历完整实现方法
2015/01/16 Javascript
Javascript实现的Map集合工具类完整实例
2015/07/31 Javascript
详解Bootstrap glyphicons字体图标
2016/01/04 Javascript
AngularJS中如何使用$parse或$eval在运行时对Scope变量赋值
2016/01/25 Javascript
JS获取复选框的值,并传递到后台的实现方法
2016/05/30 Javascript
AngularJS基础 ng-cloak 指令简单示例
2016/08/01 Javascript
微信小程序 wxapp导航 navigator详解
2016/10/31 Javascript
JavaScript 数组的深度复制解析
2016/11/02 Javascript
jQuery常见的选择器及用法介绍
2016/12/20 Javascript
使用smartupload组件实现jsp+jdbc上传下载文件实例解析
2017/01/05 Javascript
jQuery实现一个简单的验证码功能
2017/06/26 jQuery
Javascript ES6中对象类型Sets的介绍与使用详解
2017/07/17 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
jQuery实现适用于移动端的跑马灯抽奖特效示例
2019/01/18 jQuery
深入解析Vue源码实例挂载与编译流程实现思路详解
2019/05/05 Javascript
vue中使用router全局守卫实现页面拦截的示例
2020/10/23 Javascript
[01:00:25]NB vs Secret 2018国际邀请赛小组赛BO1 B组加赛 8.19
2018/08/21 DOTA
浅析python内置模块collections
2019/11/15 Python
pandas实现导出数据的四种方式
2020/12/13 Python
哥伦比亚加拿大官网:Columbia Sportswear Canada
2020/09/07 全球购物
The North Face官方旗舰店:美国著名户外品牌
2020/09/28 全球购物
Windows和Linux动态库应用异同
2016/04/17 面试题
清洁工岗位职责
2014/01/29 职场文书
银行职员个人的工作自我评价
2014/02/15 职场文书
《雪地里的小画家》教学反思
2014/02/22 职场文书
行政专员的岗位职责
2014/03/10 职场文书
五年级上册复习计划
2015/01/19 职场文书
学生会招新宣传语
2015/07/13 职场文书
治庸问责工作总结
2015/08/11 职场文书
小学大队长竞选稿
2015/11/20 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python