You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by ja...@apache.org on 2022/09/20 01:45:21 UTC

[flink] 09/25: [FLINK-29025][docs] add sub query page for Hive dialect

This is an automated email from the ASF dual-hosted git repository.

jark pushed a commit to branch release-1.16
in repository https://gitbox.apache.org/repos/asf/flink.git

commit 192fe60f1ac5391b26dd8e7ad2bde170b1c1a506
Author: luoyuxia <lu...@alumni.sjtu.edu.cn>
AuthorDate: Mon Aug 29 15:16:54 2022 +0800

    [FLINK-29025][docs] add sub query page for Hive dialect
---
 .../hiveDialect/Queries/sub-queries.md             | 69 ++++++++++++++++++++++
 .../hiveDialect/Queries/sub-queries.md             | 69 ++++++++++++++++++++++
 2 files changed, 138 insertions(+)

diff --git a/docs/content.zh/docs/dev/table/hiveCompatibility/hiveDialect/Queries/sub-queries.md b/docs/content.zh/docs/dev/table/hiveCompatibility/hiveDialect/Queries/sub-queries.md
new file mode 100644
index 00000000000..592d130bf46
--- /dev/null
+++ b/docs/content.zh/docs/dev/table/hiveCompatibility/hiveDialect/Queries/sub-queries.md
@@ -0,0 +1,69 @@
+---
+title: "Sub-Queries"
+weight: 8
+type: docs
+---
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+  http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+# Sub-Queries
+
+## Sub-Queries in the FROM Clause
+
+### Description
+
+Hive dialect supports sub-queries in the `FROM` clause. The sub-query has to be given a name because every table in a `FROM` clause must have a name.
+Columns in the sub-query select list must have unique names.
+The columns in the sub-query select list are available in the outer query just like columns of a table.
+The sub-query can also be a query expression with `UNION`. Hive dialect supports arbitrary levels of sub-queries.
+
+### Syntax
+
+```sql
+select_statement from ( subquery_select_statement ) [ AS ] name
+```
+
+### Example
+
+```sql
+SELECT col
+FROM (
+  SELECT a+b AS col
+  FROM t1
+) t2
+```
+
+## Sub-Queries in the WHERE Clause
+
+### Description
+
+Hive dialect also supports some types of sub-queries in the `WHERE` clause.
+
+### Syntax
+
+```sql
+select_statement from table WHERE { colName { IN | NOT IN } 
+                                  | NOT EXISTS | EXISTS } ( subquery_select_statement )
+```
+
+### Examples
+
+```sql
+SELECT * FROM t1 WHERE t1.x IN (SELECT y FROM t2);
+ 
+SELECT * FROM t1 WHERE EXISTS (SELECT y FROM t2 WHERE t1.x = t2.x);
+```
diff --git a/docs/content/docs/dev/table/hiveCompatibility/hiveDialect/Queries/sub-queries.md b/docs/content/docs/dev/table/hiveCompatibility/hiveDialect/Queries/sub-queries.md
new file mode 100644
index 00000000000..592d130bf46
--- /dev/null
+++ b/docs/content/docs/dev/table/hiveCompatibility/hiveDialect/Queries/sub-queries.md
@@ -0,0 +1,69 @@
+---
+title: "Sub-Queries"
+weight: 8
+type: docs
+---
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+  http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+# Sub-Queries
+
+## Sub-Queries in the FROM Clause
+
+### Description
+
+Hive dialect supports sub-queries in the `FROM` clause. The sub-query has to be given a name because every table in a `FROM` clause must have a name.
+Columns in the sub-query select list must have unique names.
+The columns in the sub-query select list are available in the outer query just like columns of a table.
+The sub-query can also be a query expression with `UNION`. Hive dialect supports arbitrary levels of sub-queries.
+
+### Syntax
+
+```sql
+select_statement from ( subquery_select_statement ) [ AS ] name
+```
+
+### Example
+
+```sql
+SELECT col
+FROM (
+  SELECT a+b AS col
+  FROM t1
+) t2
+```
+
+## Sub-Queries in the WHERE Clause
+
+### Description
+
+Hive dialect also supports some types of sub-queries in the `WHERE` clause.
+
+### Syntax
+
+```sql
+select_statement from table WHERE { colName { IN | NOT IN } 
+                                  | NOT EXISTS | EXISTS } ( subquery_select_statement )
+```
+
+### Examples
+
+```sql
+SELECT * FROM t1 WHERE t1.x IN (SELECT y FROM t2);
+ 
+SELECT * FROM t1 WHERE EXISTS (SELECT y FROM t2 WHERE t1.x = t2.x);
+```