SnowConvert AI - Redshift - SELECT INTO¶
描述¶
从表、视图和用户定义的函数中返回行,并将它们插入到新表中。(Redshift SQL 语言参考“SELECT 语句” (https://docs.aws.amazon.com/redshift/latest/dg/r_SELECT_synopsis.html))
语法¶
有关更多信息,请参阅以下每个链接:
FROM 子句¶
描述¶
查询中的
FROM子句列出了从中选择数据的表引用(表、视图和子查询)。如果列出了多个表引用,则必须在FROM子句或WHERE子句中使用相应语法联接这些表。如果未指定联接条件,则系统会将查询作为交叉联接进行处理。(Redshift SQL 语言参考“FROM 子句”) (https://docs.aws.amazon.com/redshift/latest/dg/r_FROM_clause30.html))
警告
Snowflake 部分支持 FROM 子句。目前不支持 Object 取消透视 (https://docs.aws.amazon.com/redshift/latest/dg/query-super.html#unpivoting)。
语法¶
示例源模式¶
输入代码:¶
Redshift¶
Results¶
EMPLOYEE_NAME |
DEPARTMENT_NAME |
|---|---|
John |
HR |
Jorge |
Sales |
Kwaku |
Sales |
Liu |
Sales |
Mateo |
Engineering |
Nikki |
Marketing |
Paulo |
Marketing |
Richard |
Marketing |
Sofía |
Engineering |
输出代码:¶
Redshift¶
Results¶
| EMPLOYEE_NAME | DEPARTMENT_NAME |
|---|---|
| John | HR |
| Jorge | Sales |
| Kwaku | Sales |
| Liu | Sales |
| Mateo | Engineering |
| Nikki | Marketing |
| Paulo | Marketing |
| Richard | Marketing |
| Sofía | Engineering |
已知问题¶
没有已知问题。
GROUP BY 子句¶
描述¶
GROUP BY子句标识了查询的分组列。当查询使用标准函数(如SUM、AVG和COUNT)计算聚合时,必须声明分组列。(Redshift SQL 语言参考“GROUP BY 子句” (https://docs.aws.amazon.com/redshift/latest/dg/r_GROUP_BY_clause.html))
Note
Snowflake 完全支持 GROUP BY 子句。
语法¶
示例源模式¶
输入代码:¶
Redshift¶
Results¶
MANAGER_ID |
TOTAL_EMPLOYEES |
|---|---|
100 |
1 |
101 |
3 |
102 |
2 |
103 |
3 |
104 |
3 |
1 |
输出代码:¶
Snowflake¶
Results¶
MANAGER_ID |
TOTAL_EMPLOYEES |
|---|---|
100 |
1 |
101 |
3 |
102 |
2 |
103 |
3 |
104 |
3 |
1 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
HAVING 子句¶
描述¶
HAVING子句可将条件应用于查询返回的中间分组结果集。(Redshift SQL 语言参考“HAVING 子句” (https://docs.aws.amazon.com/redshift/latest/dg/r_HAVING_clause.html))
Note
Snowflake 完全支持 HAVING 子句。
语法¶
示例源模式¶
输入代码:¶
Redshift¶
Results¶
MANAGER_ID |
TOTAL_EMPLOYEES |
|---|---|
101 |
3 |
103 |
3 |
104 |
3 |
输出代码:¶
Snowflake¶
Results¶
MANAGER_ID |
TOTAL_EMPLOYEES |
|---|---|
101 |
3 |
103 |
3 |
104 |
3 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
LIMIT 和 OFFSET 子句¶
描述¶
LIMIT 和 OFFSET 子句可检索并跳过数字中指定的行数。
Note
Snowflake 完全支持 LIMIT 和 OFFSET 子句。
语法¶
示例源模式¶
LIMIT 数¶
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
100 |
Carlos |
120000.00 |
|
101 |
John |
100 |
90000.00 |
102 |
Jorge |
101 |
95000.00 |
103 |
Kwaku |
101 |
105000.00 |
104 |
Paulo |
102 |
110000.00 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
100 |
Carlos |
120000.00 |
|
101 |
John |
100 |
90000.00 |
102 |
Jorge |
101 |
95000.00 |
103 |
Kwaku |
101 |
105000.00 |
104 |
Paulo |
102 |
110000.00 |
LIMIT ALL¶
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
100 |
Carlos |
120000.00 |
|
101 |
John |
100 |
90000.00 |
102 |
Jorge |
101 |
95000.00 |
103 |
Kwaku |
101 |
105000.00 |
104 |
Paulo |
102 |
110000.00 |
105 |
Richard |
102 |
85000.00 |
106 |
Mateo |
103 |
95000.00 |
107 |
Liu |
103 |
108000.00 |
108 |
Zhang |
104 |
95000.00 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
100 |
Carlos |
120000.00 |
|
101 |
John |
100 |
90000.00 |
102 |
Jorge |
101 |
95000.00 |
103 |
Kwaku |
101 |
105000.00 |
104 |
Paulo |
102 |
110000.00 |
105 |
Richard |
102 |
85000.00 |
106 |
Mateo |
103 |
95000.00 |
107 |
Liu |
103 |
108000.00 |
108 |
Zhang |
104 |
95000.00 |
OFFSET(无 LIMIT)¶
Snowflake 不支持 OFFSET(无 LIMIT)。LIMIT 在转换后会添加 NULL(这是默认 LIMIT)。
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
105 |
Richard |
102 |
85000.00 |
106 |
Mateo |
103 |
95000.00 |
107 |
Liu |
103 |
108000.00 |
108 |
Zhang |
104 |
95000.00 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
105 |
Richard |
102 |
85000.00 |
106 |
Mateo |
103 |
95000.00 |
107 |
Liu |
103 |
108000.00 |
108 |
Zhang |
104 |
95000.00 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
局部变量和参数¶
描述¶
Redshift also allows SELECT INTO variables when the statement is executed inside stored procedures.
Note
Snowflake 完全支持此模式。
语法¶
示例源模式¶
SELECT INTO(表达式在左侧)¶
输入代码:¶
Redshift¶
Results¶
param1 |
|---|
10 |
输出代码:¶
Snowflake¶
Results¶
TEST_SP1 |
|---|
{ "param1":10 } |
SELECT INTO(表达式在右侧)¶
输入代码:¶
Redshift¶
Results¶
param1 |
|---|
10 |
输出代码:¶
由于 Snowflake 不支持 SELECT INTO 的此语法,因此将表达式移至 INTO 的左侧。
Snowflake¶
Results¶
TEST_SP1 |
|---|
{ "param1":10 } |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
ORDER BY 子句¶
描述¶
ORDER BY子句对查询的结果集进行排序。(Redshift SQL 语言参考“Order By 子句” (https://docs.aws.amazon.com/redshift/latest/dg/r_ORDER_BY_clause.html))
Note
Snowflake 完全支持 ORDER BY 子句。
语法¶
示例源模式¶
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
107 |
Liu |
103 |
108000.00 |
103 |
Kwaku |
101 |
105000.00 |
102 |
Jorge |
101 |
95000.00 |
106 |
Mateo |
103 |
95000.00 |
108 |
Zhang |
104 |
95000.00 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
SALARY |
|---|---|---|---|
107 |
Liu |
103 |
108000.00 |
103 |
Kwaku |
101 |
105000.00 |
102 |
Jorge |
101 |
95000.00 |
106 |
Mateo |
103 |
95000.00 |
108 |
Zhang |
104 |
95000.00 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
SELECT 列表¶
描述¶
SELECT 列表会命名您希望查询返回的列、函数和表达式。该列表表示查询的输出。(Redshift SQL 语言参考“SELECT 列表” (https://docs.aws.amazon.com/redshift/latest/dg/r_SELECT_list.html))
Note
Snowflake 完全支持 查询起始选项。请记住,在 Snowflake 中,DISTINCT 和 ALL 选项必须放在查询的开头。
备注
在 Redshift 中,如果应用程序允许使用外键或无效的主键,则可能导致查询返回不正确的结果。例如,如果“主键”列中不包含所有唯一值,则 SELECT DISTINCT 查询可能会返回重复行。(Redshift SQL 语言参考“SELECT 列表” (https://docs.aws.amazon.com/redshift/latest/dg/r_SELECT_list.html))
语法¶
示例源模式¶
Top 子句¶
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
100 |
Carlos |
null |
101 |
John |
100 |
102 |
Jorge |
101 |
103 |
Kwaku |
101 |
110 |
Liu |
101 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
100 |
Carlos |
null |
101 |
John |
100 |
102 |
Jorge |
101 |
103 |
Kwaku |
101 |
110 |
Liu |
101 |
ALL¶
输入代码:¶
Redshift¶
Results¶
MANAGER_ID |
|---|
null |
100 |
101 |
101 |
101 |
102 |
103 |
103 |
103 |
104 |
104 |
102 |
104 |
输出代码:¶
Snowflake¶
Results¶
MANAGER_ID |
|---|
null |
100 |
101 |
101 |
101 |
102 |
103 |
103 |
103 |
104 |
104 |
102 |
104 |
DISTINCT¶
输入代码:¶
Redshift¶
Results¶
MANAGER_ID |
|---|
null |
100 |
101 |
102 |
103 |
104 |
输出代码:¶
Snowflake¶
Results¶
MANAGER_ID |
|---|
null |
100 |
101 |
102 |
103 |
104 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
UNION、INTERSECT 和 EXCEPT¶
描述¶
UNION、INTERSECT和EXCEPT集合运算符 用于比较和合并两个单独的查询表达式的结果。(Redshift SQL 语言参考“集合运算符” (https://docs.aws.amazon.com/redshift/latest/dg/r_UNION.html))
Note
Snowflake 完全支持 集合运算符。
语法¶
示例源模式¶
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
103 |
Kwaku |
101 |
110 |
Liu |
101 |
102 |
Jorge |
101 |
106 |
Mateo |
102 |
201 |
Sofía |
102 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
102 |
Jorge |
101 |
103 |
Kwaku |
101 |
110 |
Liu |
101 |
106 |
Mateo |
102 |
201 |
Sofía |
102 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
WHERE 子句¶
描述¶
WHERE子句中包含联接表或将谓词应用于表列的条件。(Redshift SQL 语言参考“WHERE 子句” (https://docs.aws.amazon.com/redshift/latest/dg/r_WHERE_clause.html))
Note
Snowflake 完全支持 WHERE 子句。
语法¶
示例源模式¶
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
101 |
John |
100 |
102 |
Jorge |
101 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
101 |
John |
100 |
102 |
Jorge |
101 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。
WITH 子句¶
描述¶
WITH子句是查询中的可选子句,需置于 SELECT INTO 语句之前。WITH子句定义了一个或多个 common_table_expressions。每个公用表表达式 (CTE) 都定义了一个临时表,这类似于视图定义。您可以在FROM子句中引用这些临时表。(Redshift SQL 语言参考“WITH 子句” (https://docs.aws.amazon.com/redshift/latest/dg/r_WITH_clause.html))
Note
Snowflake 完全支持 WITH 子句。
语法¶
示例源模式¶
非递归形式¶
输入代码:¶
Redshift¶
Results¶
ORDER_ID |
CUSTOMER_ID |
ORDER_DATE |
TOTAL_AMOUNT |
|---|---|---|---|
2 |
102 |
2024-02-02 |
600.00 |
4 |
104 |
2024-02-04 |
750.00 |
5 |
105 |
2024-02-05 |
900.00 |
输出代码:¶
Snowflake¶
Results¶
ORDER_ID |
CUSTOMER_ID |
ORDER_DATE |
TOTAL_AMOUNT |
|---|---|---|---|
2 |
102 |
2024-02-02 |
600.00 |
4 |
104 |
2024-02-04 |
750.00 |
5 |
105 |
2024-02-05 |
900.00 |
递归形式¶
输入代码:¶
Redshift¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
101 |
John |
100 |
103 |
Kwaku |
101 |
102 |
Jorge |
101 |
110 |
Liu |
101 |
106 |
Mateo |
102 |
201 |
Sofía |
102 |
105 |
Richard |
103 |
110 |
Nikki |
103 |
104 |
Paulo |
103 |
120 |
Saanvi |
104 |
200 |
Shirley |
104 |
205 |
Zhang |
104 |
输出代码:¶
Snowflake¶
Results¶
ID |
NAME |
MANAGER_ID |
|---|---|---|
101 |
John |
100 |
103 |
Kwaku |
101 |
102 |
Jorge |
101 |
110 |
Liu |
101 |
106 |
Mateo |
102 |
201 |
Sofía |
102 |
105 |
Richard |
103 |
110 |
Nikki |
103 |
104 |
Paulo |
103 |
120 |
Saanvi |
104 |
200 |
Shirley |
104 |
205 |
Zhang |
104 |
已知问题¶
没有已知问题。
相关的 EWIs。¶
无相关的 EWIs。