SelectDB Cloud
SQL 手册
SQL 函数
表值函数
QUERY

query

Name

query

description

query 表函数(table-valued-function,tvf),可用于将查询语句直接透传到某个 catalog 进行数据查询

:::info note Doris 2.1.3 版本开始支持,当前仅支持透传查询 jdbc catalog。 需要先在 Doris 中创建对应的 catalog。 :::

syntax

query(
  "catalog" = "catalog_name", 
  "query" = "select * from db_name.table_name where condition"
  );

参数说明

query表函数 tvf中的每一个参数都是一个 "key"="value" 对。 相关参数:

  • catalog: (必填) catalog名称,需要按照catalog的名称填写。
  • query: (必填) 需要执行的查询语句。

Example

使用 query 函数查询 jdbc 数据源中的表

select * from query("catalog" = "jdbc", "query" = "select * from db_name.table_name where condition");

可以配合desc function使用

desc function query("catalog" = "jdbc", "query" = "select * from db_name.table_name where condition");

Keywords

query, table-valued-function, tvf

Best Prac

透传查询 jdbc catalog 数据源中的表

select * from query("catalog" = "jdbc", "query" = "select * from test.student");
+------+---------+
| id   | name    |
+------+---------+
| 1    | alice   |
| 2    | bob     |
| 3    | jack    |
+------+---------+
select * from query("catalog" = "jdbc", "query" = "select * from test.score");
+------+---------+
| id   | score   |
+------+---------+
| 1    | 100     |
| 2    | 90      |
| 3    | 80      |
+------+---------+

透传关联查询 jdbc catalog 数据源中的表

select * from query("catalog" = "jdbc", "query" = "select a.id, a.name, b.score from test.student a join test.score b on a.id = b.id");
+------+---------+---------+
| id   | name    | score   |
+------+---------+---------+
| 1    | alice   | 100     |
| 2    | bob     | 90      |
| 3    | jack    | 80      |
+------+---------+---------+
© 2023 北京飞轮数据科技有限公司 京ICP备2022004029号 | Apache、Apache Doris 以及相关开源项目名称均为 Apache 基金会商标