在 Snowflake 中用单引号重命名列名
Renaming column names with single quote in Snowflake
我有一个 table 包含以下数据;
Active_Duration|'Control'|'Test'
1 | 0.21 | 0.22
但我想要不带单引号的列名。我尝试使用以下代码将单引号视为文字,并出现以下错误。
SELECT p.active_duration,
p.''Control'' AS Control_Rate,
p.''Test'' AS Test_Rate
FROM pivot_tab p;
SQL compilation error: syntax error line 2 at position 16 unexpected ''''. syntax error line 3 at position 16 unexpected ''''.
请问如何改正,并适当重命名该列,不带单引号。
我强烈建议您重建 table,但如果您必须保留它,这里有一些使用此类列的示例。
CREATE OR REPLAE TABLE ugly (
id number,
"'str'" varchar(20),
"'str2'" varchar(20));
INSERT INTO ugly values (1, 'hello', 'world');
SELECT * FROM ugly;
SELECT u., u., u. FROM ugly u;
SELECT u.id, u."'str'", u."'str2'" FROM ugly u;
希望对你有帮助...丰富
您的 SQL 语句中 "renaming" 列的示例:
SELECT p.active_duration,
p."'Control'" AS Control_Rate,
p."'Test'" AS Test_Rate
FROM pivot_tab p;
要重命名列,您可以使用 SnowFlake 的重命名语法
ALTER TABLE pivot_tab RENAME COLUMN "'Control'" TO Control;
ALTER TABLE pivot_tab RENAME COLUMN "'Test'" TO Test;
我有一个 table 包含以下数据;
Active_Duration|'Control'|'Test'
1 | 0.21 | 0.22
但我想要不带单引号的列名。我尝试使用以下代码将单引号视为文字,并出现以下错误。
SELECT p.active_duration,
p.''Control'' AS Control_Rate,
p.''Test'' AS Test_Rate
FROM pivot_tab p;
SQL compilation error: syntax error line 2 at position 16 unexpected ''''. syntax error line 3 at position 16 unexpected ''''.
请问如何改正,并适当重命名该列,不带单引号。
我强烈建议您重建 table,但如果您必须保留它,这里有一些使用此类列的示例。
CREATE OR REPLAE TABLE ugly (
id number,
"'str'" varchar(20),
"'str2'" varchar(20));
INSERT INTO ugly values (1, 'hello', 'world');
SELECT * FROM ugly;
SELECT u., u., u. FROM ugly u;
SELECT u.id, u."'str'", u."'str2'" FROM ugly u;
希望对你有帮助...丰富
您的 SQL 语句中 "renaming" 列的示例:
SELECT p.active_duration,
p."'Control'" AS Control_Rate,
p."'Test'" AS Test_Rate
FROM pivot_tab p;
要重命名列,您可以使用 SnowFlake 的重命名语法
ALTER TABLE pivot_tab RENAME COLUMN "'Control'" TO Control;
ALTER TABLE pivot_tab RENAME COLUMN "'Test'" TO Test;