Search code examples
postgresqlpsqlquoting

How do I escape single quote in command line query of psql?


I googled a lot but..

How do I escape single quote in command line query of psql ?

psql -t -A -F $'\t' postgresql://zzzz:5432/casedb -U qqqq -c 'select id,ext_ids ->> 'qwe' as qwe from data ORDER BY qwe' > /jdata/qwe.tab

Results in error

ERROR:  column "qwe" does not exist
LINE 1: select id,ext_ids ->> qwe as qwe from data...

Solution

  • In Postgres you can use dollar-quoted strings:

    select id,ext_ids ->> $$qwe$$ as qwe from data ORDER BY qwe;
    -- or
    select id,ext_ids ->> $anything$qwe$anything$ as qwe from data ORDER BY qwe;