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

问题描述:

我有一个表使用列“filename”进行测试。现在我想复制该表并自动替换该列中的名称。如何创建一个表作为另一个表的副本并用一个语句中的列替换值

我要寻找的是这样的:

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" 
); 
+0

谢谢!你救了我的一天:) – 7twenty7