执行以下SQL 脚本后,会生成表zzzz_Test_WWCREATE TABLE [zzzz_Test_WW] (
[CheckDate] [varchar] (10) NULL ,
[ref_category] [int] NULL ,
[RType] [varchar] (9) ,
[number] [int] NULL
)
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-19','491','Reference','2999394')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-20','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-21','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-22','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-23','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-24','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-25','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-26','491','Reference','3004054')select * from zzzz_Test_WW 会得到以下结果CheckDate Category RType number 2010-10-19 491 Reference 2999394
2010-10-20 491 Reference 3004054
2010-10-21 491 Reference 3004054
2010-10-22 491 Reference 3004054
2010-10-23 491 Reference 3004054
2010-10-24 491 Reference 3004054
2010-10-25 491 Reference 3004054
2010-10-26 491 Reference 3004054我想把number重复的记录删除掉,仅保留CheckDate最小的记录,即得到以下结果:CheckDate Category RType number 2010-10-19 491 Reference 2999394
2010-10-20 491 Reference 3004054
请问,我该如何写语句
谢谢大家
[CheckDate] [varchar] (10) NULL ,
[ref_category] [int] NULL ,
[RType] [varchar] (9) ,
[number] [int] NULL
)
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-19','491','Reference','2999394')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-20','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-21','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-22','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-23','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-24','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-25','491','Reference','3004054')
go
INSERT INTO zzzz_Test_WW(CheckDate,ref_Category,RType,number)
values('2010-10-26','491','Reference','3004054')select * from zzzz_Test_WW 会得到以下结果CheckDate Category RType number 2010-10-19 491 Reference 2999394
2010-10-20 491 Reference 3004054
2010-10-21 491 Reference 3004054
2010-10-22 491 Reference 3004054
2010-10-23 491 Reference 3004054
2010-10-24 491 Reference 3004054
2010-10-25 491 Reference 3004054
2010-10-26 491 Reference 3004054我想把number重复的记录删除掉,仅保留CheckDate最小的记录,即得到以下结果:CheckDate Category RType number 2010-10-19 491 Reference 2999394
2010-10-20 491 Reference 3004054
请问,我该如何写语句
谢谢大家
解决方案 »
- 外键关联的优缺点问题!
- 删除 Replication Monitor 问题
- 请教一个关于sqlserver的连接问题
- 很难的问题,有人会么?
- visio格式的图怎么导入到SQL
- 看看这个sql出错信息,有没有注入漏洞,登陆时要用户名和密码!
- sqlserver中月租计算问题,如何实现开始日期在15号之前算整月,在15以后算半月?
- 连接远程服务器,用查询分析器能连上,用企业管理器连不上,什么原因?
- 怎么用存储进程修改Truncate log on checkpoint属性?
- select 语句的 In 子句如何写,select * from test in "c:\1.xls" [execl 5.0] 为何老是不对
- sql server 2005 查找所有包含某个表的视图
- 求助一个小小的问题,紧急
where exists (select 1 from zzzz_Test_WW where number=t.number and CheckDate<t.CheckDate)select * from zzzz_Test_WW
where not exists(select null from zzzz_Test where z.Category =Category and CheckDate <t.CheckDate )
delete from zzzz_Test_WW t
where CheckDate>(select min(CheckDate) from zzzz_Test_WW where number=t.number)