赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 日志服务
  4. 操作指南
  5. 查询与分析
  6. 通过索引模式查询和分析日志
  7. SQL分析语法与功能
  8. SQL子句
  9. JOIN子句

JOIN子句

  • SQL子句
  • 发布于 2025-04-22
  • 0 次阅读
文档编辑
文档编辑

JOIN子句用于连接多个表。日志服务支持同Project下跨Logstore、Logstore和MySQL、Logstore和OSS的联合查询。本文介绍JOIN子句的基本语法和示例。

语法

SELECT table.key
FROM table1
INNER|LEFT|RIGHT|FULL OUTER JOIN table2
ON table1.key=table2.key

日志服务支持您在SELECT语句中使用INNER JOIN子句、LEFT JOIN子句、RIGHT JOIN子句和FULL JOIN子句。更多信息,请参见JOIN。

JOIN方式

说明

INNER JOIN

所有表存在交集时,返回满足条件的SELECT结果。

LEFT JOIN

即使右表(table2)中没有匹配的数据,也从左表(table1)返回所有SELECT结果。

RIGHT JOIN

即使左表(table1)中没有匹配的数据,也从右表(table2)返回所有SELECT结果。

FULL JOIN

只要一个表中存在匹配的数据,则返回满足条件的SELECT结果。

参数说明

参数

说明

key

日志字段、表达式等,参数值为任意数据类型。

table

table1为Logstore,table2为Logstore、MySQL数据库或OSS Bucket。更多信息,请参见关联MySQL数据源、关联OSS数据源。

示例

在某个Project下,名为internal-diagnostic_log的Logstore用于记录各个Logstore的消费延时、告警、采集等日志,名为internal-operation_log的Logstore用于记录Project内所有资源的操作日志。您可以使用JOIN子句,联合查询两个Logstore,从而获取各个Logstore的消费组信息、延时时间和请求方法。

示例1:INNER JOIN

  • 查询和分析语句

    * |
    SELECT
      "internal-diagnostic_log".consumer_group,
      "internal-diagnostic_log".logstore,
      "internal-operation_log".Latency,
      "internal-operation_log".Method
    FROM  "internal-diagnostic_log"
      INNER JOIN "internal-operation_log" ON "internal-diagnostic_log".logstore = "internal-operation_log".logstore
    LIMIT
      10000
  • 查询和分析结果

    返回满足条件的1328条数据。

    inner join

示例2:LEFT JOIN

  • 查询和分析语句

    * |
    SELECT
      "internal-diagnostic_log".consumer_group,
      "internal-diagnostic_log".logstore,
      "internal-operation_log".Latency,
      "internal-operation_log".Method
    FROM  "internal-diagnostic_log"
      LEFT JOIN "internal-operation_log" ON "internal-diagnostic_log".logstore = "internal-operation_log".logstore
    LIMIT
      10000
  • 查询和分析结果

    从名为internal-diagnostic_log的Logstore中返回1328条数据。

    LEFT JOIN

示例3:RIGHT JOIN

  • 查询和分析语句

    * |
    SELECT
      "internal-diagnostic_log".consumer_group,
      "internal-diagnostic_log".logstore,
      "internal-operation_log".Latency,
      "internal-operation_log".Method
    FROM  "internal-diagnostic_log"
      RIGHT JOIN "internal-operation_log" ON "internal-diagnostic_log".logstore = "internal-operation_log".logstore
    LIMIT
      10000
  • 查询和分析结果

    从名为internal-operation_log的Logstore中返回1757条数据。

    RIGHT JOIN

示例4:FULL OUTER JOIN

  • 查询和分析语句

    * |
    SELECT
      "internal-diagnostic_log".consumer_group,
      "internal-diagnostic_log".logstore,
      "internal-operation_log".Latency,
      "internal-operation_log".Method
    FROM  "internal-diagnostic_log"
      FULL OUTER JOIN "internal-operation_log" ON "internal-diagnostic_log".logstore = "internal-operation_log".logstore
    LIMIT
      10000
  • 查询和分析结果

    返回满足条件的1757条数据。

    FULL OUTER JOIN

相关文章

EXCEPT子句 2025-04-22 10:57

EXCEPT子句用于组合两个SELECT子句的结果集,并返回两个结果集的差集。即返回的行存在于第一个SELECT子句的结果集中但不存在于第二个SELECT子句的结果集中。本文介绍EXCEPT子句的基本语法和示例。 语法

EXISTS子句 2025-04-22 10:57

EXISTS子句用于判断子查询中是否存在查询结果。当EXISTS子句内的查询结果存在时,返回true,并执行外层SQL语句。 语法

GROUP BY子句 2025-04-22 10:57

GROUP BY子句通常与聚合函数一起使用,用来对查询结果中的数据行进行分组。每个分组都基于一列或多列的值。通过这种方式,可以为每个不同的组合生成一个汇总行,从而帮助用户更有效地分析数据。此外,GROUP BY子句还可以搭配ROLLUP、

HAVING子句 2025-04-22 10:57

HAVING子句用于指定过滤分组结果(GROUP BY)或聚合计算结果的条件。 语法

INSERT INTO子句 2025-04-22 10:57

INSERT INTO子句支持将SQL计算结果写入到同一Project下的其他Logstore中。 语法

INTERSECT子句 2025-04-22 10:57

INTERSECT子句用于组合两个SELECT子句的结果集,并仅返回两个结果集中共同存在的行。本文介绍INTERSECT子句的基本语法和示例。 语法

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号