如何创建一个 table 作为另一个 table 的副本并替换一个语句中列的值

How to create a table as a copy from another table and replace values from columns in one statement

我有一个 table 测试列 "filename"。现在我想复制那个 table 并自动替换该列中的名称。

我搜索类似的内容:

CREATE TABLE TEST2  AS (SELECT * FROM TEST t WHERE t.filename LIKE 'file%' REPLACE(t.filename,'file/view','etc/tmp' ));

是否可以在一条语句中做到这一点?

将替换函数放在正确的位置。

CREATE TABLE TEST2 AS (
    SELECT
            REPLACE (
                    t.filename,
                    'file/view',
                    'etc/tmp'
            ) AS filename,
            t.otherfield,
      t.whateverfield
    FROM
        TEST t
    WHERE
      t.somefield = "xy"
);