Materi
Satu orang bisa tercatat dua kali karena alamatnya ditulis berbeda: huruf besar dari impor, spasi di depan dari salin-tempel, atau mendaftar ulang lewat formulir. Akibatnya ia menerima dua salinan email yang sama dan dihitung dua kali dalam laporan.
RFC 5321 §2.4 menyatakan bagian domain, di kanan tanda @, tidak peka huruf besar-kecil. Bagian lokal, di kiri @, secara spesifikasi peka huruf, tetapi RFC yang sama menyebut memanfaatkan perbedaan huruf itu menghambat interoperabilitas dan tidak dianjurkan. Karena itu menyamakan huruf di seluruh alamat adalah aturan bisnis yang harus dinyatakan, bukan sifat bawaan email. Di kelas ini aturannya: alamat dinormalkan dengan lower(trim(email)).
Amazon SES memberi contoh mengapa normalisasi perlu dilakukan sendiri: pengiriman memperlakukan User@Example.com sama dengan user@example.com, tetapi API pengelola daftar suppression-nya menuntut huruf yang persis sama.
-- Kursus Jahit Melati: alamat yang muncul lebih dari sekali setelah dinormalkan
SELECT lower(trim(email)) AS email_norm, COUNT(*) AS banyak
FROM peserta
GROUP BY email_norm
HAVING COUNT(*) > 1;