SELECT case when b.ID=a.ID then a.Name1 else "", a.Name2, a.Num1, a.Num2, a.Num3
(
SELECT IDENTITY(1,1) AS ID, Name1, Name2, Num1, Num2, Num3 FROM A1 order by Name1
) as a,
(
SELECT MIN(ID) as ID, Name1 FROM
(
SELECT IDENTITY(1,1) AS ID, Name1, Name2, Num1, Num2, Num3 FROM A1 order by Name1
)
group by ID
) as b
WHERE
b.Name1=a.Name1
select (case when id=(select top 1 id from #t where Name1=a.Name1 order by id) then Name1 else '' end)as Name1,
Name2,
Num1,
Num2,
Num3
from #t a
order by id