mysql一个SQL案例

需求 :

  

测试数据 

create table test1_3(id int primary key auto_increment,username varchar(10),start1 int,end1 int);
insert into test1_3(username,start1,end1) values('A',1,2);
insert into test1_3(username,start1,end1) values('A',3,4);
insert into test1_3(username,start1,end1) values('B',4,5);
insert into test1_3(username,start1,end1) values('A',6,7);
insert into test1_3(username,start1,end1) values('B',7,8);
insert into test1_3(username,start1,end1) values('A',8,9);

 

 

解决:

  

 

解决2:

 解决代码 

 核心思想,把符合逻辑条件的行,构造相同分组

复制代码

select
* from test1_3; select username,min(start1) start1,max(end1) end1 from ( select test1_3.* , if(start1-1=@start1 ANd @username=username,@rn:=@rn,@rn:=@rn+1) as rn, @username:=username, @start1:=end1 as '@start' from test1_3 cross join (select @rn:=0,@start1:=0,@end1:=0,@username:='q') t order by username,start1 ) t1 group by username,rn ;
复制代码

  

  

 

posted @   郭大侠1  阅读(332)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
历史上的今天:
2018-08-26 (0)linux下的Mysql安装与基本使用(编译安装)
2018-08-26 windows下的Mysql安装与基本使用(zip)
2018-08-26 windows下的Mysql安装与基本使用(msi)
点击右上角即可分享
微信分享提示