全部產品
Search
文件中心

Simple Log Service:結構化資料SQL計算指令

更新時間:Aug 15, 2025

本文主要介紹結構化資料SQL計算指令的用法和樣本。

extend

通過SQL運算式計算結果產生新欄位。支援的SQL函數列表,請參見SPL支援的SQL函數列表

文法

| extend <output>=<sql-expr>, ...

參數說明

參數

類型

必填

說明

output

Field

添加的目標欄位名稱。不支援多個運算式結果輸出至相同的目標欄位。

重要

如果目標欄位與輸入資料中欄位重名,則直接使用新的類型以及值將其覆蓋。

sql-expr

SQLExpr

資料處理運算式。

重要

關於null值處理,請參見SPL運算式null值處理

樣本

  • 樣本1:使用計算運算式。

    * | extend Duration = EndTime - StartTime
  • 樣本2:使用Regex。

    * | extend server_protocol_version=regexp_extract(server_protocol, '\d+')
  • 樣本3:提取JSON路徑內容,並轉換部分欄位的資料類型。

    • SPL語句

      *
      | extend a=json_extract(content, '$.body.a'), b=json_extract(content, '$.body.b')
      | extend b=cast(b as BIGINT)
    • 輸入資料

      content: '{"body": {"a": 1, "b": 2}}'
    • 輸出結果

      content: '{"body": {"a": 1, "b": 2}}'
      a: '1'
      b: 2

where

根據SQL運算式過濾資料,保留滿足SQL運算式的資料條目。where指令支援的SQL函數列表,請參見SPL支援的SQL函數列表

文法

| where <sql-expr>

參數說明

參數

類型

必填

說明

sql-expr

SQLExp

SQL運算式,保留滿足此運算式的資料條目。

重要

SQL運算式中null值處理,請參見SPL運算式null值處理

樣本

  • 樣本1:根據欄位內容過濾資料條目。

    * | where userId='123'
  • 樣本2:使用匹配欄位名的Regex過濾資料條目。

    * | where regexp_like(server_protocol, '\d+')
  • 樣本3:轉換資料類型後,匹配所有服務端錯誤資料。

    * | where cast(status as BIGINT) >= 500