Добрый день, такая задача
create table #temp (v1 varchar(10), cnt int)
insert into #temp values('1',0)
insert into #temp values('1',0)
insert into #temp values('2',0)
insert into #temp values('2',0)
insert into #temp values('3',0)
select * from #temp
Получается выборка вида
v1 cnt
1 0
1 0
2 0
2 0
3 0
теперь как сделать update чтобы в cnt попали данные сколько одинаковых строк по v1?
т.е. в строках с v1=1 должно стать в поле cnt=2, т.к. две строки с этим значением.
Должно получиться чтото типа этого
update #temp A set v1=(select count(*) from #temp B where A.v1=B.v1)
Кручу верчу, через from что-то не получается.
create table #temp (v1 varchar(10), cnt int)
insert into #temp values('1',0)
insert into #temp values('1',0)
insert into #temp values('2',0)
insert into #temp values('2',0)
insert into #temp values('3',0)
select * from #temp
Получается выборка вида
v1 cnt
1 0
1 0
2 0
2 0
3 0
теперь как сделать update чтобы в cnt попали данные сколько одинаковых строк по v1?
т.е. в строках с v1=1 должно стать в поле cnt=2, т.к. две строки с этим значением.
Должно получиться чтото типа этого
update #temp A set v1=(select count(*) from #temp B where A.v1=B.v1)
Кручу верчу, через from что-то не получается.