Find rows in a single table where values in a certain column are near-duplicates
You need to exclude the rows from each other:

SELECT c.email
  FROM schema.table c,
       schema.table d
 WHERE lower(c.email) = lower(d.email)
   AND c.email &lt;&gt; d.email;


One question you will need to answer (and I will update my answer if relevant) -- are you using ILIKE because you want partial matches too?  Like, are bert@foo.com and RObert@foo.com supposed to be considered duplicates?  (I would assume not, but when people use ILIKE, it's usually to patch parts of strings, as in the bert/robert example)