select *
where email ilike '[email protected]'
ilike
é semelhante a ilike
mas não diferencia maiúsculas de minúsculas. Para caractere de escape, use replace()
where email ilike replace(replace(replace($1, '~', '~~'), '%', '~%'), '_', '~_') escape '~'
ou você pode criar uma função para escapar do texto; para array de texto use
where email ilike any(array['[email protected]', '[email protected]'])