Możesz użyć specjalnej funkcji systemu typu PostgreSQL:
SELECT *
FROM tbl t
WHERE t::text LIKE '%999999%';
Istnieje typ złożony
o tej samej nazwie dla każdej tabeli utworzonej w PostgreSQL. I jest text
reprezentacja dla każdego typu w PostgreSQL (do wartości wejściowych / wyjściowych).
Dlatego możesz po prostu rzutować cały wiersz na text
oraz czy ciąg '999999' jest zawarty w dowolnej kolumnie (jej text
reprezentacja, aby być precyzyjnym) na pewno pojawi się w powyższym zapytaniu.
Nie można wykluczyć fałszywych trafień całkowicie jednak, jeśli separatory i / lub dekoratory używane przez Postgres do reprezentacji wiersza mogą być częścią wyszukiwanego terminu. To po prostu bardzo mało prawdopodobny. I zdecydowanie nie dotyczy to wyszukiwanego hasła „999999”.
Ostatnio na codereview.SE pojawiło się bardzo podobne pytanie. Dodałem więcej wyjaśnień w mojej odpowiedzi .