Rápido y sucio:
SELECT t::text FROM tbl t WHERE id = 1;
-
t
es un alias para la tabla y no es estrictamente necesario. También puede utilizar el nombre de la tabla original. Pero si tiene una columna con el mismo nombre, tiene prioridad. -
Así que
t
representa el tipo de fila de la tabla, que se fuerza automáticamente a la representación de texto en la salida.
Agregué una conversión explícita a make estext
internamente también, en caso de que quiera hacer algo con él...t::text
es la notación abreviada de Postgres para el estándar SQLcast (t AS text)
, que también puedes usar. Detalles en el manual. -
Es posible que desee recortar los paréntesis iniciales y finales (¡únicos!) que denotan un tipo de fila:
SELECT right(left(t::text, -1), -1)) FROM tbl AS t WHERE id = 1;
-
"sucio", porque obtiene la notación de fila de Postgres, el separador resulta ser solo la coma que solicitó, pero algunos valores también se escapan y / o se citan dos veces si es necesario.