代码块中的 Postgres show 命令

Postgres show command in block of code

如何在代码块中使用 show 命令?

我尝试了几种方法,但我得到的只是一个错误

do $$
begin
show enable_mergejoin; -- I need to to print this value (on/off)
end $$

showreturns一个结果。在PL/pgSQL中你不能"just"运行语句,语句的结果必须存储在一个变量中:

do $$
declare
  l_value text;
begin
  show enable_mergejoin into l_value; -- retrieve and store the value
  raise notice '%', l_value; -- print the content
end $$
;

其他解决方案是使用 administrative functions current_settingset_setting。这些函数访问与 SHOWSET 命令相同的代码:

do $$
begin
   raise notice '%', current_seting('enable_mergejoin');
end$$