题目一:
create table etltable(
name varchar(20) ,
seq int,
money int); create table etltarget (
name varchar(20),
min_s int,
max_s int,
sum_money int); insert into etltable values
('A',1,100),
('A',2,200),
('A',3,300),
('A',8,400),
('A',9,500),
('B',1,100),
('B',2,500),
('B',5,600); 目标表结果应该是这样
A 1 3 600
A 8 9 900
B 1 2 600
B 5 5 600 解答:
select name,
min(seq) as min_s,
max(seq) as max_s,
sum(money) as money
from (
select
*,
seq-row_number() over (partition by name order by name) as rn2--连续的差值会相同
from etltable
) a group by name,rn2--连续的差值相同,按照这个分组即可
order by name

  

题目二:
with aa
as (
select 1 uid, '2015-6-1 8:20:00' as login_time union all
select 1 uid, '2015-6-2 7:20:05' as login_time union all
select 1 uid, '2015-6-3 21:20:30' as login_time union all
select 2 uid, '2015-6-1 8:10:00' as login_time union all
select 2 uid, '2015-6-3 8:20:00' as login_time union all
select 2 uid, '2015-6-4 18:20:00' as login_time union all
select 1 uid, '2015-6-5 9:20:00' as login_time union all
select 1 uid, '2015-6-6 16:20:00' as login_time union all
select 3 uid, '2015-6-1 8:20:00' as login_time union all
select 1 uid, '2015-6-7 12:20:00' as login_time union all
select 1 uid, '2015-6-8 23:20:00' as login_time union all
select 3 uid, '2015-6-2 8:20:00' as login_time union all
select 3 uid, '2015-6-3 2:20:00' as login_time ) select
uid,min(ds) as min_s,max(ds) as max_s,sum(1) cnt
from (
select * ,
day(login_time) ds,
day(login_time)-row_number() over (partition by uid order by login_time) as rn
from aa
) a
group by uid,rn

最新文章

  1. CSharpGL(20)用unProject和Project实现鼠标拖拽图元
  2. cookie---session
  3. String类的equals是如何进行字符串比较的
  4. 分享我开发的网络电话Android手机APP正式版,图文详解及下载
  5. centos(Linux)系统阿里云ECS搭建 jdk,tomcat和MySQL环境,并部署web程序
  6. Flume Hello World!
  7. uml的关联多重度
  8. 获取其它进程窗口中的状态栏信息(FindWindowEx GetWindowThreadProcessId OpenProcess SendMessage轮番轰炸)
  9. 【转】 NSString / NSMutableString 字符串处理,常用代码 (实例)
  10. MySQL的数据库引擎的类型
  11. ASP.NET开发的大型网站有哪些架构方式
  12. Unity3D学习(三):利用NGUI实现一个简单的左右摇杆
  13. 织梦dedecms如何修改关键词的字数长度限制
  14. PHP workMan webSocket 转发器
  15. Java8-对map过滤
  16. win10家庭版,双击bat文件无法运行(double click bat file does not execute)
  17. Golang 的 协程调度机制 与 GOMAXPROCS 性能调优
  18. _mount_vendor
  19. (百度)centos7上安装apache指南
  20. SQL基本概念

热门文章

  1. Autofac的基本使用---4、使用Config配置
  2. iOS崩溃治理--开篇
  3. 超详细的第一个Servlet程序
  4. Qt学习笔记-Qtcreator的webkit和qt4.7.0的版本有关
  5. Maven仓库是什么
  6. SpringBoot 2.X以上集成redis
  7. Alpha冲刺——汇总博客
  8. MySQL [ERROR] Table 'mysql.user' doesn't exist
  9. Ubuntu/Liinux睡眠无法唤醒解决方法:ACPI设置
  10. 自定义注解,更优雅的使用MP分页功能