@mysql查询最大连续天数 sql_连续多周 sql-程序员宅基地

技术标签: mysql  

SELECT
uid,
min(date) AS mindate,
max(date) AS maxdate,
max(countday) countday,
group_concat(date) dates
FROM(
SELECT uid,date,@countday := ( CASE WHEN ( DATEDIFF(date ,@last_date) = 1) THEN (@countday + 1) ELSE 1 END) AS countday,
@last_date := date
FROM(SELECT uid,dateFROM test_demo ORDER BY uid,date) AS t1,
(select @countday:=0,@last_date:=’’) as t2
) AS t3 GROUP BY uid

SELECT DATEDIFF(‘2015-09-02’,‘2015-09-01’)

分解sql
SELECT uid,dateFROM test_demo ORDER BY uid,date 排序查出id,日期

@countday @last_date 这种是变量声明

:= 赋值

@countday := ( CASE WHEN ( DATEDIFF(date ,@last_date) = 1) THEN (@countday + 1) ELSE 1 END
DATEDIFF(d1,d2) 计算两个时间的时间差值
当两个时间差值为1的时候,则为连续天数,
@countday

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_36398000/article/details/103166912

智能推荐

《运算放大器元器件》的特性分析_级联运放-程序员宅基地

文章浏览阅读5.6k次,点赞2次,收藏34次。一、运算放大器是具有很高放大倍数的多级直接耦合放大电路单元,在实际电路中,通常结合反馈网络共同组成某种功能的模块。随着半导体技术的发展,目前大部分的运放是以单芯片(集成IC)的形式存在,其输出信号可以是输入信号的比例、加、减、微分或积分等数学运算的结果。集成运放包括放大区(线性区)和饱和区(非线性区)两部分,详见其电压传输特性曲线。(1)、OP放大器的工作原理:对两个输入端间的电位差进行放大。..._级联运放

基于ssm+vue.js的图书管理系统附带文章和源代码设计说明文档ppt-程序员宅基地

文章浏览阅读889次,点赞16次,收藏28次。博主介绍:CSDN深耕的技术专家、博客专家、有着常年的工作经验、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战精彩专栏 推荐订阅2024年最值得选的微信小程序毕业设计选题大全:100个热门选题推荐2023-2024年最值得选的Java毕业设计选题大全:500个热门选题推荐JAVA精品实战案例《500套》微信小程序项目精品案例《500套》文末获取源码+数据库。

cmake开发环境 linux qt_使用 QtCreator 和 CMake 搭建 Linux 下的 STM32 开发环境-程序员宅基地

文章浏览阅读586次。系统环境:主机系统:Arch Linux 64bit交叉编译工具链:arm-none-eabi-gcc-9.3.0调试器:arm-none-eabi-gdb-9.1QtCreator 版本:4.11.2CMake 版本:3.17.1OpenOCD 版本:0.10.0硬件环境:STM32 型号:STM32F103RCT仿真调试器:ST-Link v2搭建步骤:1. 激活插件首先需要激活一个名为 Ba..._linux cmake可以编qt

C#winform程序中控件等比例缩放(主要针对主程序加载子程序)_winform 等比缩放-程序员宅基地

文章浏览阅读2k次。这里的等比例适用的是在主窗体中加载了多个子窗体,或者一个主程序引用了另外一个子程序dll这样等比例缩放,也并不是实际意义上的等比例,而是相当于重新加载子窗体,但子窗体里面的数据不能变化。 主窗体和子窗体加载这种就不介绍,直接介绍主程序加载子程序的dll这种,主窗体与子窗体与其类似。 先建立一个主程序,主程序就当做一个壳,里面简单放几个容器即可。再建立一个子程序,子程序可以随便加点窗口进去,主要是为了让主程序调用加载进主程序。为了实现所谓的等比例缩放,子窗体..._winform 等比缩放

Android 计时器Chronometer 使用及源码分析-程序员宅基地

文章浏览阅读852次,点赞27次,收藏22次。今天关于面试的分享就到这里,还是那句话,有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。最后在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。还有。

lombok常用注解大全_lombok.singular.useguava-程序员宅基地

文章浏览阅读1.9w次,点赞24次,收藏94次。lombok可以帮助我们提升日常开发的效率jar包。里面有许多实用的注解。本文将对lombok的常用注解作使用介绍,对于一些实验性官方不推荐的注解只会简单介绍实验性注解可能会带来一些风险。注: 本文基于lombok-1.18.6本文部分内容机翻自官网文章目录lombok的引入和安装lombok的基本注解使用变量相关val和var@NonNull实体类相关@Getter and @..._lombok.singular.useguava

随便推点

Leetcode 数组(简单题)[1-1000题]_给定一个浮点数数组nums(逗号分隔)和一个浮点数目标值target(与数组空格分隔),请-程序员宅基地

文章浏览阅读1.9k次。1. 两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]方法一..._给定一个浮点数数组nums(逗号分隔)和一个浮点数目标值target(与数组空格分隔),请

python性能优化方案_python 性能优化方法小结-程序员宅基地

文章浏览阅读152次。提高性能有如下方法1、Cython,用于合并python和c语言静态编译泛型2、IPython.parallel,用于在本地或者集群上并行执行代码3、numexpr,用于快速数值运算4、multiprocessing,python内建的并行处理模块5、Numba,用于为cpu动态编译python代码6、NumbaPro,用于为多核cpu和gpu动态编译python代码为了验证相同算法在上面不同实现..._np.array 测试gpu性能

GPT-ArcGIS数据处理、空间分析、可视化及多案例综合应用

GIS(地理信息系统)和GPT(生成式预训练模型)的结合正日益成为推动科研、城市规划、环境监测等领域发展的关键技术。GIS以其强大的空间数据处理、先进的空间分析工具、灵活的地图制作与可视化能力、广泛的扩展性和定制性,成为地理信息科学的核心工具。它在多学科领域的应用,如城市规划、环境科学、交通管理等,发挥着至关重要的作用。而GPT则以其在自然语言处理、文本生成、智能对话和知识库构建方面的优势,为GIS的智能化和自动化带来了新的可能性,提升了文本创作的效率和智能系统的交互体验。

在Debian 10上安装MySQL_debian mysql安装-程序员宅基地

文章浏览阅读324次。MySQL是一个著名的开源数据库管理系统,用于存储和检索各种流行应用程序的数据。MySQL 是*LAMP*堆栈中的**M**,LAMP 堆栈是一组常用的开源软件,还包括 Linux、Apache Web 服务器和 PHP 编程语言。在本教程中,您将通过添加此存储库来安装最新版本的 MySQL,安装 MySQL 软件本身,确保安装安全,并测试 MySQL 是否正在运行并响应命令。_debian mysql安装

edge 此项内容已下载并添加到 Chrome 中。_一个小扩展,解决Chrome长期以来的大痛点...-程序员宅基地

文章浏览阅读1.6k次。PC 端最好用的浏览器非 Chrome 莫属,这是一件没什么悬念的事情。前两天发了一个小调查,也只能问 除了 Chrome 之外,你的备胎浏览器是什么?所以你如果问我 PC 端的浏览器有什么推荐?我的回答也没什么创意,那就是它,是它,就是它,我们的英雄小。。。。不好意思,走串场了。至于 Chrome 浏览器到底有多好用、多厉害,不用我多说,在我 N 次的彩虹屁下,小伙伴们应该早已下载并且用得得心应..._此项内容已下载并添加到 chrome 中。

vue js 点击按钮为当前获得焦点的输入框输入值_vue获得当前获得焦点的元素-程序员宅基地

文章浏览阅读1k次。VUE js 点击按钮为当前获得焦点的输入框输入值使用mousedown方法,可以阻止页面将焦点转移到按钮上<el-button @mousedown.native="entrySymbol($event,'+')">+</el-button>获取当前拥有焦点的输入框或文本域,并为其赋值 //输入符号 entrySymbol(e, symbol) { //取消失去焦点事件 e.preventDefault() //获_vue获得当前获得焦点的元素

推荐文章

热门文章

相关标签