Postgres 复制到带有标头的 TSV 文件

Aar*_*ron 4 sql postgresql

我有一个像这样的功能 -

CREATE 
OR REPLACE FUNCTION ind (bucket text) RETURNS table (
    middle character varying (100),
    last character varying (100)
) AS $body$ BEGIN return query 
select 
  fname as first, 
  lname as last 
from all_records
; END;
$body$ LANGUAGE PLPGSQL;
Run Code Online (Sandbox Code Playgroud)

如何将结果输出select ind ('Mob')到 tsv 文件中?

我希望输出看起来像这样 -

first   last
MARY    KATHERINE
Run Code Online (Sandbox Code Playgroud)

小智 7

您可以使用 COPY 命令示例:

COPY (select * from ind('Mob')) TO '/tmp/ind.tsv'  CSV  HEADER DELIMITER E'\t';
Run Code Online (Sandbox Code Playgroud)

文件“/tmp/ind.tsv”将包含您的数据