mssql sqlserver 使用sql脚本获取群组后,按时间排序(asc)第一条数据的方法分享
摘要:
下文讲述使用sql脚本,获取群组后记录的第一条数据
业务场景说明:
学校教务处要求统计:
每次作业,最早提交的学生名单
下文通过举例的方式,记录此次脚本编写方法,方便以后备查,如下所示:
实现思路:
使用开窗函数,对数据进行分组并按照提交时间进行排序后生成新的组内编号,如下所示:
/*
over开窗函数中 partition by分组
order by 排序
*/
create table test(keyId int identity,
keChengName nvarchar(20),
name nvarchar(20),
inDate datetime)
go insert into test(keChengName,name,inDate)
values('语文','猫猫','2018-9-1 10:00:00'),
('语文','maomao365','2018-9-1 13:00:00'),
('数学','sql教程','2018-9-1 8:00:00'),
('数学','sql博客教程','2018-9-1 9:00:00'),
('数学','其它','2018-9-1 8:10:00') select * from
(
select *,
row_number() over(partition by keChengName
order by inDate asc )
as newKeyId
from test
) as t where t.newKeyId =1 go
truncate table test
drop table test
原文地址:http://www.maomao365.com/?p=7417
mssql sqlserver 使用sql脚本获取群组后,按时间排序(asc)第一条数据的方法分享的更多相关文章
- mssql sqlserver 使用sql脚本获取字符串存在多少个网址(url地址)的方法分享
摘要:下文讲述获取一个字符串中存在多少个网址的方法,如下实验环境:sql server 2008 R2 实现思路: 1.新建一个自定义函数,可将单个字符串拆分为含单个网址的数据表 2.采用outer ...
- mssql sqlserver 使用sql脚本检测数据表中一列数据是否连续的方法分享
原文地址:http://www.maomao365.com/?p=7335 摘要: 数据表中,有一列是自动流水号,由于各种操作异常原因(或者插入失败),此列数据会变的不连续,下文将讲述使用sql ...
- mssql sqlserver 使用sql脚本 清空所有数据库表数据的方法分享
摘要: 下文讲述清空数据库中所有表信息的方法分享,如下所示: 实验环境:sql server 2008 实现思路: 1.禁用所有约束,外键 2.禁用所有触发器 3.删除表数据 4.开启触发器 5.开启 ...
- mssql sqlserver 使用sql脚本输出交替不同的背景色的html信息的方法分享
转自:http://www.maomao365.com/?p=6679 摘要: 下文将分享使用sql脚本输出交替变换的不同背景颜色的sql脚本的方法分享,如下所示: 实验环境:sqlserver 20 ...
- mssql sqlserver避免sql脚本中出现除零错误的方法分享
摘自:http://www.maomao365.com/?p=6612 摘要:下文介绍sql server中,sql脚本避免出现除零错误的方法分享 在各种业务系统开发中,通常会遇到除零的错误,下文分享 ...
- mssql sqlserver 使用sql脚本实现相邻两条数据相减的方法分享
摘要: 下文讲述使用sql脚本实现相邻两条数据相减的方法,如下所示: 实验环境:sql server 2008 R2 实现思路: 1.使用cte表达式,对当前表进行重新编号 2.使用左连接对 表达式 ...
- SQL语句分组获取记录的第一条数据的方法
使用Northwind 数据库 首先查询Employees表 查询结果: city列里面只有5个城市 使用ROW_NUMBER() OVER(PARTITION BY COL1 ORDER BY CO ...
- 【转】sql server 获取每一个类别中值最大的一条数据
/* 数据如下: name val memo a 2 a2(a的第二个值) a 1 a1--a的第一个值 a 3 a3:a的第三个值 b 1 b1--b的第一个值 b 3 b3:b的第三个值 b 2 ...
- sql server 获取每一个类别中值最大的一条数据
/* 数据如下: name val memo a 2 a2(a的第二个值) a 1 a1--a的第一个值 a 3 a3:a的第三个值 b 1 b1--b的第一个值 b 3 b3:b的第三个值 b 2 ...
随机推荐
- Node.js 使用 RSA 做加密
RSA RSA加密算法是一种非对称加密算法. 假设 A 与 B 通信.A 和 B 都提供一个公开的公钥.A 把需要传递的信息,先用自己的私钥签名,再用 B 的公钥加密.B 接收到这串密文后,用自己的私 ...
- C#4并行计算
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- MFC控件编程进度条编写
MFC控件编程进度条编写 一丶进度条编程需要用到的方法 进度条MFC已经帮我们封装好类了. 叫做 CProgressCtrl 进度条编程也很简单. 封装的方法也就那个那几个. GetPos() 获 ...
- easyui datagrid列显示图片
表格头 显示图片 jquery
- Apache Solr 实现去掉重复的搜索结果
https://lucene.apache.org/solr/guide/7_2/collapse-and-expand-results.html#collapsing-query-parser 对应 ...
- C#模拟httpwebrequest请求_向服务器模拟cookie发送
使用C#代码模拟web请求,是一种常用的方法,以前没专门整理过,这里暂时贴上自己整理的完整代码,以后再做梳理: public class MyRequest { #region 辅助方法 public ...
- [转]php模拟post提交请求,调用接口
本文转自:https://www.cnblogs.com/jiqing9006/p/3949190.html /** * 模拟post进行url请求 * @param string $url * @p ...
- ORACLE 配置连接远程数据库
ORACLE配置tnsnames.ora文件实例 客户机为了和服务器连接,必须先和服务器上的监听进程联络.ORACLE通过tnsnames.ora文件中的连接描述符来说明连接信息.一般tnsnames ...
- Centos 7.6搭建LAMP,部署zabbix监控环境
一.安装环境 LAMP 1.安装apache yum install -y httpd httpd服务开机进行自启:systemctl enable httpd 启动httpd服务:systemctl ...
- spring2.0:The server time zone value 'Ãùú±êüñ¼ä' is unrecognized or represents more than one time zone. You must configure either th
提示系统时区出现错误,可以在mysql中执行命令: set global time_zone='+8:00' 或者在数据库驱动的url后加上serverTimezone=UTC参数 jdbc:mysq ...