group by your unique columns, count the rows, find the ones with count > 1.

db.define_table(
    'finddup',
    Field('f1_name'),
    Field('f2_name'),
    Field('f3_name')
    )
fd = db.finddup
count = fd.id.count()
rtn = db(fd.id>0).select(fd.f1_name, fd.f2_name, fd.f3_name, count, groupby=
fd.f1_name|fd.f2_name|fd.f3_name, having=count>1)



On Thursday, August 16, 2012 11:20:54 AM UTC+2, Loreia wrote:
>
> Hi,
>
> I am looking for a way to automatically find any possible duplicate 
> records (rows) in one table of my Postgres database.
> Quick google-ing reveals it is easy to do it with pure SQL, e.g. one way 
> specific for Postgres: 
> http://stackoverflow.com/questions/1746213/how-to-delete-duplicate-entries-in-postgresql
>
> But I would like to be able to do it with web2p DAL (which would make it 
> database independent).
> Is there a way to do it with web2py DAL?
>
> I just want to be able to find those duplicates, I don't need to delete 
> them.
>
> Thank you and best regards,
> Loreia
>

-- 



Reply via email to