当前位置:  数据库>sqlserver

sql server 重复记录的取最新一笔的实现方法

    来源: 互联网  发布时间:2014-08-29

    本文导语:  重复记录的取最新一笔的实现方法,有需要的朋友可以参考下。 有如下一些记录: S_NUMBER       P_NO     UPDATE_TIME Y1202022524   E3465   2012-02-05 16:32:16.000 Y1202022524   E0035   2012-01-16 05:38:41.000 Y1202022525   E0036   2012-01-17 ...

重复记录的取最新一笔的实现方法,有需要的朋友可以参考下。

有如下一些记录:
S_NUMBER       P_NO     UPDATE_TIME
Y1202022524   E3465   2012-02-05 16:32:16.000
Y1202022524   E0035   2012-01-16 05:38:41.000
Y1202022525   E0036   2012-01-17 05:38:41.000
Y1202022526   E0037   2012-01-18 05:38:41.000
Y1202022527   E0038   2012-01-19 05:38:41.000
Y1202022528   E0039   2012-01-20 05:38:41.000
Y1202022529   E0040   2012-01-21 05:38:41.000
 
要求:SELECT所有记录,过滤所有重复[S_NUMBER]的记录,只取[UPDATE_TIME]最新的一笔。

实现的方法与过程:

创建一个临时表#Data

代码如下:
CREATE TABLE [#Datas]
(
    S_NUMBER NVARCHAR(30),
    P_NO NVARCHAR(30),
    UPDATE_TIME DATETIME
)

把数据插入这个临时表中:

代码如下:

INSERT INTO [#Datas] VALUES
('Y1202022524', 'E3465', '2012/02/05 16:32:16'),
('Y1202022524', 'E0035', '2012/01/16 05:38:41'),
('Y1202022525', 'E0036', '2012/01/17 05:38:41'),
('Y1202022526', 'E0037', '2012/01/18 05:38:41'),
('Y1202022527', 'E0038', '2012/01/19 05:38:41'),
('Y1202022528', 'E0039', '2012/01/20 05:38:41'),
('Y1202022529', 'E0040', '2012/01/21 05:38:41')

GO

下面SELECT是在MS SQL Server 2008 R2查询分析器实现:

代码如下:
WITH it([S_NUMBER],[UPDATE_TIME])
AS
(
    SELECT [S_NUMBER],MAX([UPDATE_TIME]) FROM [dbo].[#Datas] GROUP BY [S_NUMBER]   
)
SELECT DISTINCT d.[S_NUMBER],[P_NO],d.[UPDATE_TIME]
FROM [dbo].[#Datas] AS d
INNER JOIN it
 ON (d.[S_NUMBER] = it.[S_NUMBER] and d.[UPDATE_TIME] = it.[UPDATE_TIME]);

执行结果,如下图所示:

 

您可能感兴趣的文章:
sql server 查询重复记录的多种方法
sql server删除表中重复数据行的方法
sql server删除重复记录且只余一条的例子
SQL Server删除重复数据的几种方法
去除重复数据的SQL语句
如何在SQL Server2008中删除重复记录


    
 
 

您可能感兴趣的文章:

  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • 我想把csdn的论坛改成一个软件平台,另外增加数据查询功能,聊天功能,不知怎样实现比较好?我想用jbuider 7+SQL server实现,不知如何?
  • SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)
  • SQL Server设置主键自增长列(使用sql语句实现)
  • 如何实现DOS下用Turbo C 连接SQL Server 7?
  • 在SQL server 2000中用JAVA实现图片存储
  • 如何实现用jsp将sql server 的数据备份出来!并指定存放路径!
  • 如何实现图片上传啊,而且我想把它记录在SQL SERVER中!!有空请帮我!!!
  • 用oracle pl/sql 从A unix机器,去读取B unix机器上的一个文件,怎么实现?
  • 用SQL语句实现替换字符串
  • 请问在 Linux 下如何用代码实现连接oracle数据库 并 执行 SQL 语句?
  • 写sql进数据库(DB2)怎样实现自动插入(表的主键为String)
  • SQL Server 7.0或2000 的jdbc驱动程序中提供了连接池的实现吗?
  • sql函数实现递归查询示例
  • 在ADF中跟踪SQL执行时间实现代码
  • sql server中通过查询分析器实现数据库的备份与恢复方法分享
  • SQL Server本地时间和UTC时间的相互转换实现代码
  • java实现简单的给sql语句赋值的示例
  • T-SQL 实现一个简单的 Split 函数
  • 在SQL中获取一个长字符串中某个字符串出现次数的实现方法
  • SQL语句去掉重复记录,获取重复记录
  • sql语句怎么写:将table中字段name='string1'的记录都改为name='string2'的记录
  • SQL查找某一条记录的方法
  • sql 查询记录数结果集某个区间内记录
  • 当ResultSet执行SQL成功后,我如何取得ResultSet的记录部条数
  • ResultSet rs = stmt.executeQuery(sql),如果该sql的结果是没有符合的记录,那么rs此时是什么东东?是null吗?如果不是,如何判断是空resultset?
  • sql面试题(查看数据中指定几行记录)
  • 从每个分类选择10条记录的sql语句
  • sql面试题(查看自动编号数据中指定几行记录)
  • 如何得到返回记录集的总条数???sql问题,求助!!!
  • jsp+SQL删除记录出错,请指教!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 安装SQL2008时提示删除SQL2005Express工具的解决方法
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • C#使用带like的sql语句时防sql注入的方法
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • sql无效字符引起的执行sql语句报错的解决方法
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server降权运行 SQL Server 2000以GUESTS权限运行设置方法
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • (X86/X64)安装sql server 2005 过程中提示“无法启动sql server的 启动”的解决方法
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍
  • sql数据库多用户模式修改方法
  • java命名空间java.sql接口rowid的类成员方法: tostring定义及介绍
  • 安装sql server 2008 management提示已安装 SQL Server 2005 Express的解决方法
  • java命名空间javax.sql.rowset接口joinrowset的类成员方法: getwhereclause定义及介绍
  • C#代码验证sql语句是否正确(只验证不执行sql)的方法
  • java命名空间java.sql接口statement的类成员方法: execute定义及介绍
  • Sql2000与Sql2005共存安装的解决方法
  • java命名空间java.sql接口resultset的类成员方法: getcursorname定义及介绍
  • sql server 代理(已禁用代理xp)的解决方法
  • java命名空间java.sql接口resultsetmetadata的类成员方法: getcolumntype定义及介绍
  • 更改sql server拥有者的方法
  • java命名空间javax.sql.rowset.spi类syncprovider的类成员方法: getrowsetwriter定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口sqlinput的类成员方法: readblob定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口sqlinput的类成员方法: readarray定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口sqlinput的类成员方法: readsqlxml定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口sqlinput的类成员方法: readrowid定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3