projectb => SELECT array_accum(SUBSTRING(source FROM 1 FOR 1)) AS first, SUBSTRING(source FROM 2) AS rest FROM (SELECT DISTINCT source FROM source) AS source GROUP BY rest HAVING COUNT(SUBSTRING(source FROM 1 FOR 1)) >= 4 ORDER BY rest; first | rest ---------------------+--------- {c,f,j,l,p,s} | am {a,g,n,y} | ap {c,d,p,r,t,x} | ar {b,d,l,s} | ash {h,i,l,n,r,v} | at {b,m,r,s} | c {g,j,p,x} | cal {e,g,p,x} | cb {d,j,k,n,t} | cc {a,f,i,v} | check {a,d,e,g,m,u} | cl {e,j,n,q,u,x} | d {e,g,l,t,x} | db {c,d,r,s} | dd {j,l,o,u} | de {f,g,l,s,w,x} | dm {a,l,p,u} | dns {e,l,n,q,r} | e {j,s,t,x} | ed {g,l,m,n} | edit {c,e,f,x} | fingerd {b,d,l,p,x} | fm {g,k,p,y} | forth {c,g,j,l} | ftp {b,g,m,o,p} | identd {f,k,t,v,z} | ile {s,u,v,z} | im {b,d,m,s,w} | ing {b,g,w,z} | ip {j,l,s,t} | irc {a,c,f,j,u} | lex {e,p,s,z} | lib {f,k,r,x} | log {i,m,o,q,s,v} | m {c,q,s,w,x} | mail {c,d,h,m,o,p,s,t,x} | make {e,i,l,x} | mms {b,g,x,z} | oo {b,c,r,s} | play {e,f,g,r} | pm {g,p,t,w,x} | pp {i,q,w,x} | print {a,b,m,o} | sc {b,c,d,k,p,z} | sh {a,f,p,x} | sp {a,h,s,x} | t {g,u,x,y} | talk {a,e,i,k,q,w,x} | term {a,h,i,m,n,p} | top {c,k,q,r} | torrent {a,h,l,n,o} | tp {g,i,j,o} | ts {c,j,n,o,r} | unit {f,g,l,p,w} | v {c,k,p,r} | vm {i,l,n,s,x} | watch {9,b,d,j,l,p,t} | wm {g,j,r,w,x} | zip (58 Zeilen)
... and the winner is make!