倾斜的描述可能不是我想要的。这是一个例子。给出一个表t1:
src dest length path
a e 5 a b e
a d 2 a c d
a g 6 a c g
a e 3 a c e
a e 4 a g e
a d 2 a b d
对于每个(src,dest)对,如果只有一个条目,则保留它;如果有多个条目,请选择具有最小长度的条目,如果它们的长度相同,则保留所有条目。 输出应为:
src dest length path
a d 2 a c d
a g 6 a c g
a e 3 a c e
a d 2 a b d
如何使用PostgreSQL处理它?</ p>
答案 0 :(得分:2)
我会使用窗口函数:
select t.*
from (select t.*,
dense_rank() over (partition by src, dest order by length) as seqnum
from t
) t
where seqnum = 1;
答案 1 :(得分:0)
我不认为你可以在没有扫描表两次的情况下制作它:
ClickGuard.guard(mPlayButton);