Vedo che stai usando anche le tabelle temporanee. Definisci le stesse regole di confronto e set di caratteri anche per le tabelle temporanee. Usa le regole di confronto a livello di colonna nella query SELECT stessa (anche, ovunque tu inserisca un join)
select * from some_table
where some_column collate
utf8_general_ci = 'Name of the City';
Questo dovrebbe funzionare per te.