, если подстрока может появиться в любой позиции на другом адресе, вы можете сделать соединение как:
select a.id, a.addr, b.id as b_id, b.addr as b_addr from t a, t b where
b.addr like concat('%', substr(a.addr, 0, 5), '%') and
b.id <> a.id;
вернет все записи, чьи первые 5 символов адреса находятся где-либо внутри другого адреса.
или вы можете просто игнорировать материал после символа 5 с группой:
select firstname, substr(addr, 0, 5) from t group by firstname,
substr(addr, 0, 5);
вы можете использовать инструмент для нормализации почтовых адресов, например:
https://webgis.usc.edu/Services/AddressNormalization/Default.aspx
(бесплатно до 2500 записей)