下面的sql语句如何写才能得到小弟我想要的结果

下面的sql语句怎么写才能得到我想要的结果编号状态001是001否002是003是003否004否想要的结果编号状态001

下面的sql语句怎么写才能得到我想要的结果
编号     状态
001     是
001     否
002     是
003     是
003     否
004     否

想要的结果
编号     状态
001     是
002     是
003     是
004     否


求支援

语句:

select * from
(select * from rexsen where id in (select id from ( select id,count(id) s from rexsen group by id) where s=2) and name <> '否')union
(select * from rexsen where id not in (select id from ( select id,count(id) s from rexsen group by id) where s=2) )

[解决办法]
其实编码重复,这个表结构就已经没有任何意义了,就当是联系SQL语句,才会有点作用。现实中,id貌似不是重复的。这种问题也就比较好解决。
[解决办法]
3F写的不错,也可以用KEEP(DENSE_RANK FIRST ORDER BY FLAG DESC)
[解决办法]
with t as
 (select '001' seq, '是' flag
    from dual
  union all
  select '001', '否'
    from dual
  union all
  select '002', '是'
    from dual
  union all
  select '002', '否'
    from dual
  union all
  select '003', '是'
    from dual
  union all
  select '003', '否'
    from dual
  union all
  select '004', '否' from dual)


select seq,case when instr(wm_concat(flag),'是')>0 then '是' else '否' end from t group by seq;