create table test
(newdate datetime,status varchar(10), value varchar(10))
insert into test (newdate,status,value) values
('2022-01-04 18:00:57','Newone','segmentone')
,('2022-01-04 19:00:57','Newone','segmentone'),
('2022-04-04 18:00:57','Newtwo','segmenthee')
,('2022-04-04 19:00:57','Newtwo','segmenfour')
;with mycte as (
select newdate,status,value
,count(*) over(Partition by status,value) cnt
,row_number() Over(Partition by status Order by newdate) rnAsc
,row_number() Over(Partition by status Order by newdate DESC) rnDesc
from test
)
select newdate,status,value
from mycte
WHERE (cnt>1 and rnAsc=1) or (cnt=1 and rnDesc=1)
drop table test