Ex: Delete Duplicate Contacts

List<Contact> conList = [select firstname, lastname from contact];

Map<String, ID> mMap = new Map<String, ID>();

for(Contact c: conList)

{

mMap.put(c.name, c.id);

}

List<Contact> uniqList = new List<Contact>();

List<Contact> delList = new List<Contact>();

Set<String> sSet = mMap.keySet();

Set<ID> uniqSet = new Set<ID>;

for(String s: sSet)

{

uniqSet.add(mMap.get(s));

}

for(Contact c1: conList)

{

if((uniqSet.contains(c1.id)))

uniqList.add(c1);

else

delList.add(c1);

}

delete delList;

Note: Use isDeleted=true & ALL ROWS keyword to get the deleted records from the recycle bin using SOQL.

Note: ALL ROWS keyword cannot be used in the query editor but can be used in the apex class or function while querying record in [].

Our Recent Blog

Share This Post