当前位置: 首页 > 编程日记 > 正文

使用ROW_NUMBER 和partition by 解决报表中的查询问题

在报表中遇到一个查询问题: 原始数据如下:

Id    cust_id      call_date         call_result
1	1	2012-03-15 09:00:00	fail
2	1	2012-03-15 09:05:00	number error
3	1	2012-03-15 09:10:00	fail
4	1	2012-03-15 09:15:00	success
5	2	2012-03-15 09:01:00	fail
6	2	2012-03-15 09:06:00	number error
7	2	2012-03-15 09:17:00	fail
8	2	2012-03-15 09:18:00	success
9	3	2012-03-15 09:04:00	fail
10	3	2012-03-15 09:09:00	number error
11	3	2012-03-15 09:19:00	fail
12	3	2012-03-15 09:22:22	success
13	4	2012-03-15 09:07:00	fail
14	4	2012-03-15 09:21:40	success

查询出每个cust_id对应的前三条记录:

思路: 使用ROWNUMBER 和 partition by 对每个cust_id对应的记录产生序号, 然后对产生的序号列操作,产生查询出的结果集。

select Id,cust_id,call_date,call_result from (
select ROW_NUMBER() over(partition by cust_id order by call_date) as [rows],* 
from cust_result)a where a.rows<=3 

列表:

1	1	2012-03-15 09:00:00	fail
2	1	2012-03-15 09:05:00	number error
3	1	2012-03-15 09:10:00	fail
5	2	2012-03-15 09:01:00	fail
6	2	2012-03-15 09:06:00	number error
7	2	2012-03-15 09:17:00	fail
9	3	2012-03-15 09:04:00	fail
10	3	2012-03-15 09:09:00	number error
11	3	2012-03-15 09:19:00	fail
13	4	2012-03-15 09:07:00	fail
14	4	2012-03-15 09:21:40	success

相关文章:

中国AI开发者真实现状:写代码这条路,会走多久?

2016 年起&#xff0c;人工智能成为中国开发者重点关注的技术领域&#xff0c;以深度学习驱动的计算机视觉、自然语言处理、语音相关技术成为渗透最广的三个 AI 技术领域。然而&#xff0c;在这样的背景下&#xff0c;AI 仍是一个非常前沿的学科&#xff0c;对于中国开发者而言…

linux学习-awk工具

awk是基于列的文本处理工具&#xff0c;它的工作方式是按行读取文本并视为一条记录&#xff0c;每条记录以字段分割成若干字段&#xff0c;然后输出个字段的值&#xff0c;事实上&#xff0c;awk是一种编程语言。awk认为文件都是结构化的&#xff0c;也就是说由单词和各种空白字…

【Live555】live555源码详解(四):Medium媒体基础类

【Live555】live555源码详解系列笔记 7、Media Medai所依赖关系图 依赖Medai关系图 Media和UsageEnvironment关联图

linux中普通文件和块设备文件的区别

1&#xff0c;概述 一直都搞不明白普通文件跟块文件的区别&#xff0c;总觉得一个普通的文件是存放在磁盘块上&#xff0c;那它既属于普通文件又属于块设备文件。刚好下午睡了一个大头觉&#xff0c;比较清醒&#xff0c;集中学习了下普通文件和块设备文件的区别和联系。 本文从…

我的vim配置

我的vim配置 1.通用配置 vimrc 2.自己配置 1.新建.c,.h,.sh,.java文件&#xff0c;自动插入文件头 vim ~/.vim_runtime/my_configs.vim 输入一下内容 """""""""""""""""""&qu…

【Live555】live555源码详解(五):MediaSource、MediaSink、MediaSession、MediaSubsession

【Live555】live555源码详解系列笔记 继承协作关系图 下面红色表示本博客将要介绍的四个类所在的位置: MediaSource、MediaSink、MediaSession、MediaSubsession 8、MediaSource MediaSource 继承自 Medium,下面是MediaSource的协作图 关于 MediaSource 类的继承关系 …

BAT携手清华、复旦、上交齐聚杭州, 和500名开发者干点啥?

2016 年起&#xff0c;人工智能成为中国开发者重点关注的技术领域&#xff0c;以深度学习驱动的计算机视觉、自然语言处理、语音相关技术成为渗透最广的三个 AI 技术领域。然而&#xff0c;在这样的背景下&#xff0c;AI 仍是一个非常前沿的学科&#xff0c;对于中国开发者而言…

MOS2010开发基础和集几种开发模型

基础 基本的部署结构图类似如下 创建新的Web Application的原因&#xff1a; One key reason to create a new web application is to isolate content. Every time a new web application is created, SharePoint creates a new content database. All the data in the sites …

还在用Matplotlib? 又一可视化神器Altair登场 | 技术头条

作者 | Fernando Irarrzaval 翻译 | Monanfei责编 | Jane出品 | Python 大本营&#xff08;id&#xff1a;pythonnews&#xff09;【导语】如何将我们的数据以更好的形势呈现出来&#xff1f;擅长不同编程语言的程序员会选择各自技术范畴内成熟、好用的工具包&#xff0c;比如 …

【Live555】live555源码详解(六):FramedSource、RTPSource、RTPSink

【Live555】live555源码详解系列笔记 继承协作关系图 下面红色表示本博客将要介绍的三个类所在的位置: FramedSource、RTPSource、RTPSink 11、FramedSource FramedSource 继承自 MediaSource,下面是实现 FramedSource 的依赖关系图 使用 FramedSource 的关系图

maven在idea的配置

首先去官网下载如图&#xff1a; 下载之后解压打开如图&#xff1a; 配置&#xff1a;1、打开conf文件夹下的settings.xml&#xff08;我用的notepad&#xff09; 第55行左右加上图上的第150行左右在标签下面写上如图&#xff08;阿里提供的存架包的仓库&#xff09; 2、配置id…

Apache下实现禁止目录浏览

当我们访问某个网站时&#xff0c;在后面增加相应的目录&#xff0c;就可以浏览到目录&#xff0c;对于网站来说&#xff0c;是很不安全的。 解决办法&#xff1a;1、编辑httpd.conf文件vi ./conf/httpd.conf找到如下内容&#xff1a;......<Directory "C:/Program Fi…

【Live555】live555源码详解(七):GenericMediaServer、RTSPServer、RTSPClient

【Live555】live555源码详解系列笔记 继承协作关系图 下面红色表示本博客将要介绍的三个类所在的位置: GenericMediaServer、RTSPServer、RTSPClient 14、GenericMediaServer GenericMediaServer 继承自 Medium,依赖关系图如下: 使用 GenericMediaServer 的关系图:

200万?程序员刚拿下华为Offer,这些技巧你必须知道!

最近&#xff0c;有华为员工在匿名社交网站上&#xff0c;曝光自己年收入已突破200万&#xff01;消息一出&#xff0c;不知酸了多少中国程序员&#xff01;但是&#xff0c;在羡慕之余&#xff0c;我们不如利用起碎片时间&#xff0c;从点滴做起&#xff0c;背水一战&#xff…

有效快速的学习微信小程序

微信小程序 实现了应用“触手可及”的梦想&#xff0c;用户扫一扫或搜一下即可打开应用。不用安装&#xff0c;即开即用&#xff0c;用完就走。省流量&#xff0c;省安装时间&#xff0c;不占用桌面。对用户使用上来说&#xff0c;确实方便&#xff0c;没有繁琐的注册&#xff…

Delphi开发的IOCP测试Demo以及使用说明。

Delphi开发的IOCP&#xff0c;此为压力测试Demo和使用说明。

【Live555】live555源码详解(八):testRTSPClient

【Live555】live555源码详解系列笔记 继承协作关系图 下面红色表示本博客将要介绍的testRTSPClient实现的三个类所在的位置: ourRTSPClient、StreamClientState、DummySink 1、流程分析 1.1 设置使用环境 创建任务调度器和使用环境 TaskScheduler* scheduler = BasicTask…

ICML 2019:序列到序列自然语言生成任务超越BERT、GPT!微软提出通用预训练模型MASS | 技术头条...

来源 | 微软研究院AI头条&#xff08;id&#xff1a;MSRAsia&#xff09;责编 | Jane编者按&#xff1a;从2018年开始&#xff0c;预训练&#xff08;pre-train&#xff09; 毫无疑问成为NLP领域最热的研究方向。借助于BERT和GPT等预训练模型&#xff0c;人类在多个自然语言理解…

linux 命令详解 二十七

4. 循环语句: Bash Shell中主要提供了三种循环方式&#xff1a;for、while和until。 for循环声明格式&#xff1a; for variable in word_list do command done 见如下示例脚本&#xff1a; /> cat > test7.sh for score in math engl…

【Live555】live555源码详解系列笔记

【Live555】liveMedia下载、配置、编译、安装、基本概念 【Live555】live555源码详解(一):BasicUsageEnvironment、UsageEnvironment 【Live555】live555源码详解(二):BasicHashTable、DelayQueue、HandlerSet 【Live555】live555源码详解(三):Groupsock 【Live555】l…

android 每个块半径不同的扇形图,自定义view

1.首先看效果图 2.自定义PieChartView&#xff0c;继承自View&#xff0c;下边为PieChartView代码 package com.yingjinbao.im.peach.customview;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint…

人工智能的浪潮中,知识图谱何去何从?

漆桂林认为&#xff0c;目前知识图谱整个领域最关注的问题还是如何能够高效、低成本构建知识图谱&#xff0c;而这个问题对于研究人员来说&#xff0c;仍是一个非常大的挑战&#xff0c;比如现在大家都在关注如何在少量甚至无标注场景下进行知识图谱构建。 记者 | Jane 责编 |…

布Sendmail之网,安全则不漏(上)

Sendmail是一种古老的邮件服务器&#xff0c;但是它仍然存在着种种问题&#xff0c;最大的问题就是安全问题。由于Sendmail邮件服务器占据了很大的市场份额&#xff0c;因此&#xff0c;提高Sendmail的安全性就显得格外重要了。本篇拟从证书、Starttls、Sasl技术来探讨Sendmail…

英伟达发布新型GAN,豹子秒变沙皮狗!| 技术头条

作者 | 刘静编译 | 李尔客转自自图灵TOPIA&#xff08;ID:turingtopia&#xff09;5月9日&#xff0c;英伟达首席研究科学家刘明宇在社交网站公布了其最新研究成果&#xff1a;一种新型的GAN&#xff0c;在测试期间只需几张示例图像&#xff0c;就可以将图像转换为以前从未见过…

【Live555】live555源码详解(九):ServerMediaSession、ServerMediaSubsession、live555MediaServer

【Live555】live555源码详解系列笔记 继承协作关系图 下面红色表示本博客将要介绍的三个类所在的位置: ServerMediaSession、ServerMediaSubsession、DynamicRTSPServer DynamicRTSPServer是live555MediaServer中实现的类,用来创建RTSP服务器 17、ServerMediaSession Se…

windows下mysql和linux下mysql主从配置

1. linux下mysql安装版本5.6 windows下mysql版本5.7 不要问我为什么版本不一致 就是想这么搞 2. linux为主服务器 windows为从服务器 3.找到liunx下mysql配置文件 添加如下 然后重新启动 4.添加复制用户 5.查看master状态&#xff0c;记录下两个参数 mysql> show mas…

myeclipse快捷键大全

1.转变大写&#xff1a;ctrlshiftx; 2.转变小写&#xff1a;ctrlshifty; 3.关闭当前窗口&#xff1a;ctrlw; 4.关闭所有的窗口&#xff1a;ctrlshiftw; 5.帮助提示&#xff1a;这个可以选择自己喜欢的键位组合&#xff1a;我比较喜欢ctrlenter; 6.复制当前行&#xff1a;ctrlal…

算力觉醒后,智慧距离勃发就只差一个想法

“太阳把自己的能量以光的形式洒向地面&#xff0c;让植物得以利用光合作用生长成熟&#xff1b;繁茂的草木不仅为动物们提供了栖息的家园&#xff0c;更将太阳的馈赠化为甜蜜的果实&#xff0c;在滋养万灵的同时把自己对未来的希望变成种子&#xff0c;播撒到远方……形成下一…

【Ubuntu】将Ubuntu的源改为国内源

1、备份源 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak2、查询系统代号 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.1 LTS Release: 20.04 Codename: focal我在Ubuntu20.4上做的测试&#xff0c;Ubun…

浏览器缓存和webpack缓存配置

网络请求会耗费大量时间和请求&#xff0c;如果可以重用为改变的网络资源&#xff0c;对于用户来说可以更快更流畅的查看网页&#xff0c;对于服务器来说减少了很多负荷&#xff0c;所以浏览器缓存是前端优化的重要内容。本文介绍了浏览器缓存的机制和缓存在webpack中的应用。 …