PostgreSQL unterscheidet zwischen Groß- und Kleinschreibung, dies könnte hier ein Problem darstellen. DISTINCT ON kann für die Suche ohne Berücksichtigung der Groß-/Kleinschreibung verwendet werden (getestet auf 7.4)
SELECT DISTINCT ON (upper(name)) name FROM names ORDER BY upper(name);