\gset
将当前查询缓冲区发送给服务器,并将查询输出存入 psql 变量(参见下面的 变量 )。要执行的查询必须恰好返回一行。该行的每一列分别存入一个变量,变量名与列名相同。例如:
当前查看 PostgreSQL 18。
中文定义与说明
将当前查询缓冲区发送给服务器,并将查询输出存入 psql 变量(参见下面的变量)。要执行的查询必须恰好返回一行。该行的每一列分别存入一个变量,变量名与列名相同。例如:
=>
SELECT 'hello' AS var1, 10 AS var2->\gset=>\echo :var1 :var2hello 10如果指定了
prefix,则会将该字符串加到查询的列名前面,以构成要使用的变量名:=>
SELECT 'hello' AS var1, 10 AS var2->\gset result_=>\echo :result_var1 :result_var2hello 10如果某一列的结果为 NULL,则取消设置对应的变量,而不是设置它。
如果查询失败或没有恰好返回一行,则不会更改任何变量。
如果当前查询缓冲区为空,则改为重新执行最近发送的查询。
说明
将当前查询缓冲区发送给服务器,并将查询输出存入 psql 变量(参见下面的 变量 )。要执行的查询必须恰好返回一行。该行的每一列分别存入一个变量,变量名与列名相同。例如:
- 客户端
- psql 18.7
- 区分大小写的写法
- \gset
用法
\gset [ prefix ]本版手册中的写法
| 命令 | 手册中的后缀修饰符 |
|---|---|
| \gset | 此语法签名未列出 |
手册定义
将当前查询缓冲区发送给服务器,并将查询输出存入 psql 变量(参见下面的变量)。要执行的查询必须恰好返回一行。该行的每一列分别存入一个变量,变量名与列名相同。例如:
=>
SELECT 'hello' AS var1, 10 AS var2->\gset=>\echo :var1 :var2hello 10如果指定了
prefix,则会将该字符串加到查询的列名前面,以构成要使用的变量名:=>
SELECT 'hello' AS var1, 10 AS var2->\gset result_=>\echo :result_var1 :result_var2hello 10如果某一列的结果为 NULL,则取消设置对应的变量,而不是设置它。
如果查询失败或没有恰好返回一行,则不会更改任何变量。
如果当前查询缓冲区为空,则改为重新执行最近发送的查询。
相关条目
文档与源码
来源构建
- 版本
- 18.7
- 构建
- https://ftp.postgresql.org/pub/source/v18.7/postgresql-18.7.tar.bz2
- 来源指纹
1b2d62b4845aa46374f2cb680f95d3392322cc8128646992ae4e18d0e7084915
版本比较
PostgreSQL 17 → 18: 无变化。
比较已记录的接口与属性,排除来源指纹和构建元数据。某个样本中没有记录,不能据此判断实际引入或移除的版本。
相关条目
导出 JSON · 返回psql 命令 · 收录范围为 PostgreSQL 10 至 20;最早采样版本不一定是实际引入版本。