Snabbt och smutsigt:
SELECT t::text FROM tbl t WHERE id = 1;
-
t
är ett alias för bordet och behövs inte strikt. Du kan också använda det ursprungliga tabellnamnet. Men om du har en kolumn med samma namn har den företräde. -
Så
t
representerar tabellens radtyp, som automatiskt tvingas till textrepresentation vid utdata.
Jag lade till en explicit cast för att göra dettext
internt också - om du vill göra något med det ...t::text
är Postgres kort notation för SQL-standardencast (t AS text)
, som du också kan använda. Detaljer i manualen. -
Du kanske vill trimma (enkla!) inledande och avslutande parenteser som anger en radtyp:
SELECT right(left(t::text, -1), -1)) FROM tbl AS t WHERE id = 1;
-
"smutsig", eftersom du får Postgres radnotation, råkar avgränsaren vara precis kommatecken du bad om, men vissa värden är också escaped och/eller dubbla citattecken om det behövs.