Wiki / psql Commands / Query execution
\getresults
This group of commands implements pipelining of SQL statements. A pipeline must begin with a \startpipeline and end with an \endpipeline . In between there may be any number of \syncpipeline commands, which sends a sync message without ending the on…
Reading PostgreSQL 18.6.
Description
This group of commands implements pipelining of SQL statements. A pipeline must begin with a \startpipeline and end with an \endpipeline . In between there may be any number of \syncpipeline commands, which sends a sync message without ending the ongoing pipeline and flushing the send buffer. In pipeline mode, statements are sent to the server without waiting for the results of previous statements. See Section 32.5 for more details.
- Client
- psql 18.6
- Case-sensitive spelling
- \getresults
Usage
\startpipeline \sendpipeline \syncpipeline \endpipeline \flushrequest \flush \getresults [ number_results ]Spellings in this manual definition
| Command | Documented suffix modifiers |
|---|---|
| \startpipeline | None listed in this signature |
| \sendpipeline | None listed in this signature |
| \syncpipeline | None listed in this signature |
| \endpipeline | None listed in this signature |
| \flushrequest | None listed in this signature |
| \flush | None listed in this signature |
| \getresults | None listed in this signature |
Manual definition
\startpipeline\sendpipeline\syncpipeline\endpipeline\flushrequest\flush\getresults [number_results]-
This group of commands implements pipelining of SQL statements. A pipeline must begin with a
\startpipelineand end with an\endpipeline. In between there may be any number of\syncpipelinecommands, which sends a sync message without ending the ongoing pipeline and flushing the send buffer. In pipeline mode, statements are sent to the server without waiting for the results of previous statements. See Section 32.5 for more details.All queries executed while a pipeline is ongoing use the extended query protocol. Queries are appended to the pipeline when ending with a semicolon. The meta-commands
\bind,\bind_named,\close_preparedor\parsecan be used in an ongoing pipeline. While a pipeline is ongoing,\sendpipelinewill append the current query buffer to the pipeline. Other meta-commands like\g,\gxor\gdescare not allowed in pipeline mode.\flushrequestappends a flush command to the pipeline, allowing to read results with\getresultswithout issuing a sync or ending the pipeline.\getresultswill automatically push unsent data to the server.\flushcan be used to manually push unsent data.\getresultsaccepts an optionalnumber_resultsparameter. If provided, only the firstnumber_resultspending results will be read. If not provided or0, all pending results are read.When pipeline mode is active, a dedicated prompt variable is available to report the pipeline status. See
%Pfor more detailsCOPYis not supported while in pipeline mode.Example:
\startpipeline SELECT * FROM pg_class; SELECT 1 \bind \sendpipeline \flushrequest \getresults \endpipeline
Related entries
Documentation and source
Source build
- Version
- 18.6
- Build
- https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
- Source fingerprint
ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8
Compare versions
PostgreSQL 17 → 18: added.
--- PostgreSQL 17
+++ PostgreSQL 18
@@ -1 +1,14 @@
-Not recorded in this version
+{
+ "definition": "This group of commands implements pipelining of SQL statements. A pipeline must begin with a \\startpipeline and end with an \\endpipeline . In between there may be any number of \\syncpipeline commands, which sends a sync message without ending the ongoing pipeline and flushing the send buffer. In pipeline mode, statements are sent to the server without waiting for the results of previous statements. See Section 32.5 for more details. All queries executed while a pipeline is ongoing use the extended query protocol. Queries are appended to the pipeline when ending with a semicolon. The meta-commands \\bind , \\bind_named , \\close_prepared or \\parse can be used in an ongoing pipeline. While a pipeline is ongoing, \\sendpipeline will append the current query buffer to the pipeline. Other meta-commands like \\g , \\gx or \\gdesc are not allowed in pipeline mode. \\flushrequest appends a flush command to the pipeline, allowing to read results with \\getresults without issuing a sync or ending the pipeline. \\getresults will automatically push unsent data to the server. \\flush can be used to manually push unsent data. \\getresults accepts an optional number_results parameter. If provided, only the first number_results pending results will be read. If not provided or 0 , all pending results are read. When pipeline mode is active, a dedicated prompt variable is available to report the pipeline status. See %P for more details COPY is not supported while in pipeline mode. Example: \\startpipeline SELECT * FROM pg_class; SELECT 1 \\bind \\sendpipeline \\flushrequest \\getresults \\endpipeline",
+ "modifiers": [],
+ "signature": "\\startpipeline \\sendpipeline \\syncpipeline \\endpipeline \\flushrequest \\flush \\getresults [ number_results ]",
+ "spellings": [
+ "\\startpipeline",
+ "\\sendpipeline",
+ "\\syncpipeline",
+ "\\endpipeline",
+ "\\flushrequest",
+ "\\flush",
+ "\\getresults"
+ ]
+}
Compares recorded interfaces and attributes. Source fingerprints and build metadata are excluded; an absent sample is not proof of the introduction or removal release.
Related entries
Export JSON · Back to psql Commands · Recorded in PostgreSQL 18 through 20; the first sample is not necessarily its introduction.