我一生无法将结果推送到表格中。我对SQL和Snowflake还是相当陌生,所以我确定这是一个简单的语法问题。下面的代码显示的结果在Snowflake中很好,但是现在我需要将这些结果放入自己的表“ Results”中,不需任何帮助!
这是我正在工作的SQL语句:
SELECT *
FROM "CTDBGI"."PUBLIC"."SOLAR"
WHERE "Home Phone" NOT IN(Select 'Phone' FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS")
AND "Zip" IN(Select "Zip" FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS");
答案 0 :(得分:1)
正如已经建议的那样,您可以使用Create table“ TABLE NAME” AS ...,但是“ AS”关键字将出现在表名之后。
例如,您的情况;
CREATE TABLE RESULTS AS
SELECT *
FROM "CTDBGI"."PUBLIC"."SOLAR"
WHERE "Home Phone" NOT IN(Select 'Phone' FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS")
AND "Zip" IN(Select "Zip" FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS");
但是,在您的代码中,子查询将Phone定义为字符串“ Phone”,它应该是Phone或“ Phone”。在SQL中,“”被视为字符串,并且不会在运行时求值。
使用正确的语法修改代码;
CREATE TABLE RESULTS AS
SELECT *
FROM "CTDBGI"."PUBLIC"."SOLAR"
WHERE "Home Phone" NOT IN(Select "Phone" FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS")
AND "Zip" IN(Select "Zip" FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS");
希望这会有所帮助。
答案 1 :(得分:0)
雪花支持create table as
。所以:
CREATE TABLE AS new_table
SELECT *
FROM "CTDBGI"."PUBLIC"."SOLAR"
WHERE "Home Phone" NOT IN (Select 'Phone' FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS") AND
"Zip" IN (Select "Zip" FROM "CTDBGI"."PUBLIC"."CLIENTINPUTS");