Puede utilizar una función especial del sistema de tipos de PostgreSQL:
SELECT *
FROM tbl t
WHERE t::text LIKE '%999999%';
Hay un tipo compuesto
del mismo nombre para cada tabla que cree en PostgreSQL. Y hay un text
representación para cada tipo en PostgreSQL (a valores de entrada/salida).
Por lo tanto, puede convertir toda la fila en text
y si la cadena '999999' está contenida en alguna columna (su text
representación, para ser precisos) se garantiza que se muestre en la consulta anterior.
No se pueden descartar falsos positivos completamente, sin embargo, si los separadores y/o decoradores utilizados por Postgres para la representación de filas pueden ser parte del término de búsqueda. Es simplemente muy improbable. Y definitivamente no es el caso de su término de búsqueda '999999'.
Hubo una pregunta muy similar en codereview.SE recientemente. Agregué una explicación más en mi respuesta allí .