表结构如下:
a b c d f
1 001 222 0
2 001 222 0
3 001 222 1
这只是一个重复单元,要求C 的值为1的时候,就选取该条记录,否则随意取一条 。d f 的值也是不同的
求大神指教怎么写sql语句
------解决方案--------------------
select * from(
select t.*,row_number()over(partition by a,b order by case c when 1 then 1 else 2 end)rn
from 表 t)
where rn=1