set nocount on
create table tb(代码 int, 时间 datetime,jg int)
insert into tb values(1 ,'2008-4-20', 35 )
insert into tb values(1 ,'2008-4-13', 77 )
insert into tb values(1 ,'2008-4-10', 35 )
insert into tb values(1 ,'2008-4-6', 43 )
insert into tb values(1 ,'2008-4-2', 35 )
insert into tb values(1 ,'2008-3-30', 35 )
insert into tb values(2 ,'2008-3-23', 35 )
insert into tb values(1 ,'2008-3-23', 35 )
insert into tb values(2 ,'2008-3-20', 35 )
insert into tb values(1 ,'2008-3-15', 89 )
insert into tb values(1 ,'2008-3-8', 35 )
insert into tb values(1 ,'2008-3-5', 35 )
insert into tb values(1 ,'2008-3-3', 35 )
insert into tb values(1 ,'2008-3-1', 35 )
insert into tb values(1 ,'2008-2-8', 35 )
insert into tb values(1 ,'2008-2-5', 35 )
insert into tb values(1 ,'2008-2-3', 35 )
insert into tb values(1 ,'2008-2-1', 35 )
insert into tb values(2 ,'2008-1-4', 35 )
go
select px = identity(int,1,1) ,0 as id,* into # from tb
declare @i int,@dm int
set @i = 0
update #
set id = @I,@i = @i + (case when 代码= @dm then 0 else 1 end ),@dm = 代码
select count(*)
from # where id = 1 and jg = 35
drop table tb,#
/*
-----------
4
*/