psql command
General
\bind
[PARAM]... set query parameters\copyright
show PostgreSQL usage and distribution terms\crosstabview
[COLUMNS] execute query and display result in crosstab\errverbose
show most recent error message at maximum verbosity\g
[(OPTIONS)] [FILE] execute query (and send result to file or |pipe);\g
with no arguments is equivalent to a semicolon\gdesc
describe result of query, without executing it\gexec
execute query, then execute each value in its result\gset
[PREFIX] execute query and store result in psql variables\gx
[(OPTIONS)] [FILE] as\g
, but forces expanded output mode\q
quit psql\watch
[[i=]SEC] [c=N] [m=MIN] execute query every SEC seconds, up to N times, stop if less than MIN rows are returned
Help
\?
[commands] show help on backslash commands\?
options show help on psql command-line options\?
variables show help on special variables\h
[NAME] help on syntax of SQL commands, * for all commands
Query Buffer
\e
[FILE] [LINE] edit the query buffer (or file) with external editor\ef
[FUNCNAME [LINE]] edit function definition with external editor\ev
[VIEWNAME [LINE]] edit view definition with external editor\p
show the contents of the query buffer\r
reset (clear) the query buffer\s
[FILE] display history or save it to file\w
FILE write query buffer to file
Input/Output
\copy
... perform SQL COPY with data stream to the client host\echo
[-n] [STRING] write string to standard output (-n for no newline)\i
FILE execute commands from file\ir
FILE as \i, but relative to location of current script\o
[FILE] send all query results to file or |pipe\qecho
[-n] [STRING] write string to \o output stream (-n for no newline)\warn
[-n] [STRING] write string to standard error (-n for no newline)
Conditional
\if
EXPR begin conditional block\elif
EXPR alternative within current conditional block\else
final alternative within current conditional block\endif
end conditional block
Informational
(options: S = show system objects, + = additional detail)
- \d[S+] list tables, views, and sequences
- \d[S+] NAME describe table, view, sequence, or index
- \da[S] [PATTERN] list aggregates
- \dA[+] [PATTERN] list access methods
- \dAc[+] [AMPTRN [TYPEPTRN]] list operator classes
- \dAf[+] [AMPTRN [TYPEPTRN]] list operator families
- \dAo[+] [AMPTRN [OPFPTRN]] list operators of operator families
- \dAp[+] [AMPTRN [OPFPTRN]] list support functions of operator families
- \db[+] [PATTERN] list tablespaces
- \dc[S+] [PATTERN] list conversions
- \dconfig[+] [PATTERN] list configuration parameters
- \dC[+] [PATTERN] list casts
- \dd[S] [PATTERN] show object descriptions not displayed elsewhere
- \dD[S+] [PATTERN] list domains
- \ddp [PATTERN] list default privileges
- \dE[S+] [PATTERN] list foreign tables
- \des[+] [PATTERN] list foreign servers
- \det[+] [PATTERN] list foreign tables
- \deu[+] [PATTERN] list user mappings
- \dew[+] [PATTERN] list foreign-data wrappers
- \df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]] list [only agg/normal/procedure/trigger/window] functions
- \dF[+] [PATTERN] list text search configurations
- \dFd[+] [PATTERN] list text search dictionaries
- \dFp[+] [PATTERN] list text search parsers
- \dFt[+] [PATTERN] list text search templates
- \dg[S+] [PATTERN] list roles
- \di[S+] [PATTERN] list indexes
- \dl[+] list large objects, same as \lo_list
- \dL[S+] [PATTERN] list procedural languages
- \dm[S+] [PATTERN] list materialized views
- \dn[S+] [PATTERN] list schemas
- \do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]] list operators
- \dO[S+] [PATTERN] list collations
- \dp[S] [PATTERN] list table, view, and sequence access privileges
- \dP[itn+] [PATTERN] list [only index/table] partitioned relations [n=nested]
- \drds [ROLEPTRN [DBPTRN]] list per-database role settings
- \drg[S] [PATTERN] list role grants
- \dRp[+] [PATTERN] list replication publications
- \dRs[+] [PATTERN] list replication subscriptions
- \ds[S+] [PATTERN] list sequences
- \dt[S+] [PATTERN] list tables
- \dT[S+] [PATTERN] list data types
- \du[S+] [PATTERN] list roles
- \dv[S+] [PATTERN] list views
- \dx[+] [PATTERN] list extensions
- \dX [PATTERN] list extended statistics
- \dy[+] [PATTERN] list event triggers
- \l[+] [PATTERN] list databases
- \sf[+] FUNCNAME show a function's definition
- \sv[+] VIEWNAME show a view's definition
- \z[S] [PATTERN] same as \dp
Large Objects
- \lo_export LOBOID FILE write large object to file
- \lo_import FILE [COMMENT] read large object from file
- \lo_list[+] list large objects
- \lo_unlink LOBOID delete a large object
Formatting
- \a toggle between unaligned and aligned output mode
- \C [STRING] set table title, or unset if none
- \f [STRING] show or set field separator for unaligned query output
- \H toggle HTML output mode (currently off)
- \pset [NAME [VALUE]] set table output option (border|columns|csv_fieldsep|expanded|fieldsep| fieldsep_zero|footer|format|linestyle|null| numericlocale|pager|pager_min_lines|recordsep| recordsep_zero|tableattr|title|tuples_only| unicode_border_linestyle|unicode_column_linestyle| unicode_header_linestyle|xheader_width)
- \t [on|off] show only rows (currently off)
- \T [STRING] set HTML
tag attributes, or unset if none
- \x [on|off|auto] toggle expanded output (currently off)
Connection
- \c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo} connect to new database (currently "fadev_infra")
- \conninfo display information about current connection
- \encoding [ENCODING] show or set client encoding
- \password [USERNAME] securely change the password for a user
Operating System
- \cd [DIR] change the current working directory
- \getenv PSQLVAR ENVVAR fetch environment variable
- \setenv NAME [VALUE] set or unset environment variable
- \timing [on|off] toggle timing of commands (currently off)
- ! [COMMAND] execute command in shell or start interactive shell
Variables
- \prompt [TEXT] NAME prompt user to set internal variable
- \set [NAME [VALUE]] set internal variable, or list all if no parameters
- \unset NAME unset (delete) internal variable