全部產品
Search
文件中心

Simple Log Service:邏輯運算子

更新時間:Jun 30, 2024

本文介紹邏輯運算子的基本文法及樣本。

Log Service支援如下邏輯運算子。

重要
  • 在Log Service分析語句中,表示字串的字元必須使用單引號('')包裹,無符號包裹或被雙引號("")包裹的字元表示欄位名或列名。例如:'status'表示字串status,status"status"表示日誌欄位status。

  • 邏輯運算子優先順序從高到低為not、and、or。您可以使用圓括弧改變預設的計算順序。

  • 邏輯運算只支援輸入值為true、false或null的布林運算式。

運算子

文法

說明

支援SQL

支援SPL

AND運算子

x AND y

xy的值都為true時,返回結果為true。

OR運算子

x OR y

xy中任意一個的值為true時,返回結果為true。

NOT運算子

NOT x

x的值為false時,返回結果為true。

AND運算子

xy的值都為true時,返回結果為true。

文法

x AND y 

參數說明

參數

說明

x

參數值為布林運算式。

y

參數值為布林運算式。

傳回值類型

boolean類型。

樣本

SQL

如果status欄位值為200且request_method欄位值為GET,則返回true。否則返回false。

  • 查詢和分析語句

    *|SELECT status=200 AND request_method='GET'
  • 查詢和分析結果AND運算子

SPL

如果status欄位值為200且request_method欄位值為GET,則返回true。否則返回false。

  • SPL語句

*|extend a = status=200 AND request_method='GET'
  • SPL結果image.png

OR運算子

xy中任意一個的值為true時,返回結果為true。

文法

x OR y 

參數說明

參數

說明

x

參數值為布林運算式。

y

參數值為布林運算式。

傳回值類型

boolean類型。

樣本

SQL

尋找request_uri欄位值是以file-8或file-6的結尾的日誌。

  • 查詢和分析語句

    *|SELECT *  WHERE request_uri LIKE '%file-8' OR request_uri LIKE '%file-6'
  • 查詢和分析結果OR

SPL

尋找request_uri欄位值是以file-8或file-6的結尾的日誌。

  • SPL語句

*|WHERE request_uri LIKE '%file-8' OR request_uri LIKE '%file-6'
  • SPL結果image.png

NOT運算子

x的值為false時,返回結果為true。

文法

 NOT x 

參數說明

參數

說明

x

參數值為布林運算式。

傳回值類型

boolean類型。

樣本

SQL

統計請求狀態代碼不為200時的請求時間長度。

  • 查詢和分析語句

    *|SELECT request_time WHERE NOT status=200
  • 查詢和分析結果NOT

SPL

查詢請求狀態代碼不為200時的日誌資訊。

  • SPL語句

*|WHERE NOT status=200
  • SPL結果image.png

附錄:真值表

xy的值為true、false或null時,真值表如下所示。

x

y

x AND y

x OR y

NOT x

true

true

true

true

false

true

false

false

true

false

true

null

null

true

false

false

true

false

true

true

false

false

false

false

true

false

null

false

null

true

null

true

null

true

null

null

false

false

null

null

null

null

null

null

null