postgresql 我试图在方法副本中添加一个固定值

yqkkidmi  于 2023-11-18  发布在  PostgreSQL
关注(0)|答案(2)|浏览(96)

我试图在方法副本中添加一个固定值。有一个csv文件,但除了来自它的数据,我想添加一个固定值到表中。在vertica中有列as表达式。

create table if not exists public.test
    (
    ID int,
    OPTION_TYPE varchar(500),
    dttm date, 
    NUM_CSV int
    )

字符串
副本:

COPY public.test(
            ID,OPTION_TYPE,DTTM,
            NUM_CSV AS 1
            )
            FROM STDIN
            WITH (FORMAT CSV)


我试着通过查询,但它没有工作。

pdsfdshx

pdsfdshx1#

随意发明新的语法很少是成功的途径。我能想到的唯一方法是改变默认值:

ALTER TABLE public.test ALTER num_csv SET DEFAULT 1;

字符串
然后在COPY语句中省略该列:

COPY public.test (id, option_type, dttm) FROM STDIN WITH (FORMAT 'csv');

dgtucam1

dgtucam12#

您可以通过在COPY命令中直接提供固定值来实现这一点。查询如下:

COPY public.test (ID, OPTION_TYPE, DTTM, NUM_CSV)
FROM '/path/to/your/csv/file.csv' 
WITH (FORMAT CSV, DELIMITER ',');

UPDATE public.test SET NUM_CSV = 1;

字符串
使用COPY命令将数据从CSV文件加载到表中。然后,运行UPDATE语句将表中所有行的NUM_CSV值设置为1。

相关问题