EXCEPT子句

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

语法

SELECT key1... FROM logstore1
EXCEPT
SELECT key2... FROM logstore2
重要
  • 每个SELECT子句必须拥有相同数量的列,对应列的顺序和数据类型相同。

  • EXCEPT子句会删除最终结果集中重复的行,即返回的每一行都是唯一的。

参数说明

参数

说明

key

字段名、列名或表达式。

key1key2的名称可不同,但数据类型必须相同。

logstore

Logstore名称。

示例

名为internal-diagnostic_log的Logstore用于记录重要日志,包括各个Logstore的消费延时、告警、采集等日志;名为internal-operation_log的Logstore用于记录详细日志,包括Project内所有资源的操作日志。您可以使用EXCEPT子句,查询哪些Logstore生成了详细日志,但没有生成重要日志。

  • 查询和分析语句

    * |
    SELECT
      logstore
    FROM  internal-operation_log
    EXCEPT
    SELECT
      logstore
    FROM  internal-diagnostic_log
  • 查询和分析结果EXCEPT