All Products
Search
Document Center

Simple Log Service:Fungsi string

Last Updated:Jun 22, 2026

Topik ini menjelaskan sintaks dasar dan contoh penggunaan fungsi string.

Log Service mendukung fungsi string berikut.

Penting Jika Anda ingin menggunakan string dalam pernyataan analitik, Anda harus membungkus string dengan tanda petik tunggal (''). String yang tidak dibungkus atau dibungkus dengan tanda petik ganda ("") menunjukkan nama field atau nama kolom. Misalnya, 'status' menunjukkan string status, sedangkan status atau "status" menunjukkan field log status.

Function

Syntax

Description

SQL

SPL

chr function

chr(x)

Mengonversi kode ASCII ke karakter.

codepoint function

codepoint(x)

Mengonversi karakter ke kode ASCII.

concat function

concat(x, y...)

Menggabungkan beberapa string.

from_utf8 function

from_utf8(x)

Mendekode string biner sebagai teks UTF-8, mengganti karakter yang tidak valid dengan karakter pengganti default (U+FFFD).

from_utf8(x, replace_string)

Mendekode string biner sebagai teks UTF-8, mengganti karakter yang tidak valid dengan string kustom.

length function

length(x)

Mengembalikan panjang string.

levenshtein_distance function

levenshtein_distance(x, y)

Menghitung jarak edit minimum antara x dan y.

×

lower function

lower(x)

Mengonversi string menjadi huruf kecil.

lpad function

lpad(x, length, lpad_string)

Menambahkan awalan string dengan string tertentu hingga mencapai panjang yang ditentukan.

ltrim function

ltrim(x)

Menghapus spasi awal dari string.

normalize function

normalize(x)

Menormalisasi string ke bentuk NFC.

×

position function

position(sub_string in x)

Mengembalikan posisi awal kemunculan pertama substring dalam string lain.

×

replace function

replace(x, sub_string )

Menghapus semua kemunculan substring tertentu dari string.

replace(x, sub_string, replace_string)

Mengganti semua kemunculan substring tertentu dengan string pengganti.

reverse function

reverse(x)

Membalik urutan karakter dalam string.

rpad function

rpad(x, length, rpad_string)

Menambahkan akhiran string dengan string tertentu hingga mencapai panjang yang ditentukan.

rtrim function

rtrim(x)

Menghapus spasi akhir dari string.

split function

split(x, delimiter)

Memisahkan string berdasarkan delimiter dan mengembalikan array substring.

split(x, delimiter, limit)

Memisahkan string berdasarkan pemisah tertentu, menggunakan parameter limit untuk membatasi jumlah pemisahan, dan mengembalikan array substring hasilnya.

split_part function

split_part(x, delimiter, part)

Memisahkan string berdasarkan delimiter dan mengembalikan substring pada posisi tertentu.

split_to_map function

split_to_map(x, delimiter01, delimiter02)

Memisahkan string menjadi map pasangan kunci-nilai menggunakan dua delimiter.

strpos function

strpos(x, sub_string)

Fungsi ini merupakan alias untuk position(sub_string in x).

substr function

substr(x, start)

Mengekstraksi substring dari string, dimulai dari posisi tertentu.

substr(x, start, length)

Mengekstraksi substring dengan panjang tertentu dari string, dimulai dari posisi tertentu.

to_utf8 function

to_utf8(x)

Mengencode string menjadi string biner UTF-8.

trim function

trim(x)

Menghapus spasi awal dan akhir dari string.

upper function

upper(x)

Mengonversi string menjadi huruf kapital.

csv_extract_map function

csv_extract_map(x, delimiter, quote, keys)

Mengekstraksi nilai tertentu dari baris teks CSV ke dalam map.

×

ilike function

ilike(x, pattern)

Memeriksa apakah string sesuai dengan pola, tanpa membedakan huruf besar/kecil.

str_uuid function

str_uuid()

Menghasilkan UUID acak 128-bit dan mengembalikannya sebagai string.

×

gzip_compress function

gzip_compress(data, compression_level)

Mengompres string menjadi aliran biner menggunakan algoritma GZIP.

×

gzip_decompress function

gzip_decompress(binary_data)

Mendekompres aliran biner yang dikompres GZIP, mengembalikan string aslinya.

×

search function

search(search_expression)

Menjalankan pencarian teks lengkap pada data log dalam pernyataan analitik SQL. Mendukung operasi Boolean, pencarian berbasis field, kueri fuzzy, dan kueri rentang.

×

chr function

Fungsi chr mengonversi kode ASCII ke karakter.

Sintaks

chr(x)

Parameter

Parameter

Description

x

Kode ASCII.

Tipe kembali

varchar.

Contoh

Menentukan apakah huruf pertama dari nilai field region adalah 'c', di mana 99 adalah kode ASCII untuk huruf kecil 'c'.

  • Field contoh

    region:cn-shanghai
  • Pernyataan kueri dan analisis (Test)

    * | SELECT
      substr(region, 1, 1) = chr(99)
  • Hasil kueri dan analisis: Nilai kembali untuk kolom _col0 adalah true, yang menunjukkan bahwa karakter pertama dari field region sesuai dengan chr(99) (karakter c).

Codepoint function

Fungsi codepoint mengonversi karakter ke kode ASCII.

Sintaks

codepoint(x)

Parameter

Parameter

Description

x

Karakter yang akan dikonversi, harus bertipe varchar.

Tipe nilai kembali

integer.

Contoh

Menentukan apakah huruf pertama dari nilai field region adalah 'c', di mana 99 adalah kode ASCII untuk huruf kecil 'c'.

  • Field contoh

    upstream_status:200
  • Pernyataan kueri (test)

    * | SELECT
      codepoint(cast (substr(region, 1, 1) AS char(1))) = 99
  • Hasil kueri dan analisis: Kolom _col0 mengembalikan dua baris data, dan nilai kedua baris tersebut adalah true.

Concat function

Menggabungkan beberapa string menjadi satu string.

Sintaks

concat(x, y...)

Parameter

Parameter

Description

x

Nilainya harus bertipe varchar.

y

Nilainya harus bertipe varchar.

Tipe nilai kembali

Nilai yang dikembalikan bertipe varchar.

Contoh

Menggabungkan nilai field region dan request_method menjadi satu string.

  • Field contoh

    region:cn-shanghai
    time:14/Jul/2021:02:19:40
  • Pernyataan kueri dan analisis (Test)

    * | SELECT
      concat(region, '-', time)
  • Dalam hasil kueri dan analisis, kolom _col0 mengembalikan string gabungan, seperti cn-shanghai-14/Jul/2021:01:16:30.

from_utf8 function

Mendekode string biner ke format encoding UTF-8.

Sintaks

  • Mengganti karakter UTF-8 yang tidak valid dengan karakter pengganti default, U+FFFD.

    from_utf8(x)
  • Mengganti karakter UTF-8 yang tidak valid dengan karakter tertentu.

    from_utf8(x,replace_string)

Parameter

Parameter

Description

x

String biner yang akan didekode.

replace_string

Karakter tunggal opsional atau spasi yang digunakan untuk mengganti karakter UTF-8 yang tidak valid.

Tipe nilai kembali

varchar

Contoh

  • Mendekode string biner 0x80 dan mengganti karakter UTF-8 yang tidak valid dengan karakter pengganti default (U+FFFD).

    • Pernyataan kueri dan analisis (Debug)

      * | SELECT
        from_utf8(from_base64('0x80'))
    • Hasil kueri dan analisis: Kueri mengembalikan satu kolom _col0. Nilainya adalah string yang berisi karakter pengganti (U+FFFD), yang berarti byte UTF-8 yang tidak valid telah diganti oleh karakter pengganti default.

  • Mendekode string biner 0x80 dan mengganti karakter UTF-8 yang tidak valid dengan '0'.

    • Pernyataan kueri dan analisis (Debug)

      * | SELECT
        from_utf8(from_base64('0x80'), '0')
    • Hasil kueri dan analisis mengembalikan satu kolom bernama _col0 dengan nilai 0□4. Kotak persegi mewakili byte yang tidak dapat dirender dengan benar, yang merupakan output dari fungsi from_utf8 setelah mengganti byte UTF-8 yang tidak valid.

Length function

Mengembalikan panjang string.

Sintaks

length(x)

Parameter

Parameter

Description

x

Nilai varchar.

Nilai kembali

bigint

Contoh

Menghitung panjang nilai field http_user_agent.

  • Field contoh

    http_user_agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2
  • Pernyataan kueri (Test)

    * | SELECT
      length(http_user_agent)
  • Hasil kueri dan analisis adalah 127, yang merepresentasikan panjang string dari nilai field http_user_agent.

levenshtein_distance

Menghitung jarak edit minimum antara dua string.

Sintaks

levenshtein_distance(x, y)

Parameter

Parameter

Description

x

Nilai bertipe varchar.

y

Nilai bertipe varchar.

Nilai kembali

bigint.

Contoh

Kueri jarak edit minimum antara nilai field instance_id dan owner_id.

  • Field contoh

    instance_id:i-01
    owner_id:owner-01
  • Pernyataan kueri dan analisis (debug)

    * | SELECT
      levenshtein_distance(owner_id, instance_id)
  • Hasil kueri dan analisis adalah 5.

Lower function

Mengonversi string menjadi huruf kecil.

Sintaks

lower(x)

Parameter

Parameter

Description

x

String varchar.

Tipe kembali

varchar

Contoh

Mengonversi nilai field request_method menjadi huruf kecil.

  • Field contoh

    request_method:GET
  • Pernyataan kueri dan analisis (Debug)

    * | SELECT
      lower(request_method)
  • Hasil kueri dan analisis adalah get.

lpad function

Fungsi lpad menambahkan awalan string dengan karakter tertentu hingga mencapai panjang yang ditentukan.

Sintaks

lpad(x, length, lpad_string)

Parameter

Parameter

Description

x

Nilainya harus bertipe varchar.

length

Bilangan bulat yang menentukan panjang yang diinginkan dari string hasil.

  • Jika string asli lebih pendek dari length, fungsi akan menambahkan awalan.

  • Jika string asli lebih panjang dari length, fungsi akan memotongnya menjadi length karakter.

lpad_string

Karakter atau string yang digunakan untuk padding.

Tipe kembali

varchar

Contoh

Menambahkan awalan nol pada nilai field instance_id hingga mencapai panjang 10 digit.

  • Field contoh

    instance_id:i-01
  • Pernyataan kueri (Test)

    * | SELECT
      lpad(instance_id, 10, '0')
  • Dalam hasil kueri dan analisis, nilai kembali kolom _col0 adalah 000000i-01.

ltrim function

Menghapus spasi awal dari string.

Sintaks

ltrim(x)

Parameter

Parameter

Description

x

String input. Harus bertipe varchar.

Tipe nilai kembali

varchar

Contoh

Menghapus spasi awal dari nilai field region.

  • Field contoh

    region: cn-shanghai
  • Pernyataan kueri dan analisis (Test)

    * | SELECT
      ltrim(region)
  • Hasilnya adalah cn-shanghai.

Normalize function

Menormalisasi string menggunakan format Normalization Form C (NFC).

Sintaks

normalize(x)

Parameter

Parameter

Description

x

String varchar yang akan dinormalisasi.

Tipe nilai kembali

varchar.

Contoh

Contoh ini menormalisasi string schön menggunakan format NFC.

  • Pernyataan kueri (debug)

    * | SELECT
      normalize('schön')
  • Hasil kueri dan analisis mengembalikan satu baris dan satu kolom, dengan nama kolom _col0 dan nilai schön.

Position function

Mengembalikan posisi awal substring dalam string.

Sintaks

position(sub_string in x)

Parameter

Parameter

Description

sub_string

Substring yang dicari.

x

String yang dicari, harus bertipe varchar.

Tipe nilai kembali

Mengembalikan bilangan bulat yang merepresentasikan posisi awal berbasis 1 dari substring. Jika substring tidak ditemukan, fungsi mengembalikan 0.

Contoh

Menemukan posisi substring cn dalam field region.

  • Field contoh

    region:cn-shanghai
  • Pernyataan kueri dan analisis (Test)

    * | SELECT
      position('cn' in region)
  • Hasil kueri dan analisis: Kolom _col0 mengembalikan 1, yang menunjukkan bahwa substring cn dimulai pada posisi 1 dalam string cn-shanghai.

Replace function

Fungsi replace menghapus atau mengganti semua kemunculan substring tertentu dalam string.

Sintaks

  • Menghapus semua kemunculan substring dari string.

    replace(x, sub_string)
  • Mengganti semua kemunculan substring dengan string lain.

    replace(x, sub_string, replace_string)

Parameter

Parameter

Description

x

String sumber. Tipe datanya harus varchar.

sub_string

Substring yang akan dihapus atau diganti.

replace_string

String pengganti.

Tipe nilai kembali

varchar

Contoh

  • Contoh 1: Dalam nilai field region, ganti cn dengan China.

    • Field contoh

      region:cn-shanghai
    • Pernyataan kueri dan analisis (Debug)

      * | select
        replace(region, 'cn', '中国')
    • Dalam hasil kueri dan analisis, nilai kolom _col0 adalah China-shanghai.

  • Contoh 2: Hapus cn- dari nilai field region.

    • Field contoh

      region:cn-shanghai
    • Pernyataan kueri dan analisis (Debug)

      * | select
        replace(region, 'cn-')
    • Hasil kueri dan analisis adalah shanghai.

Reverse function

Fungsi reverse mengembalikan string dengan urutan karakternya dibalik.

Sintaks

reverse(x)

Parameter

Parameter

Description

x

String input, harus bertipe varchar.

Tipe nilai kembali

varchar

Contoh

Membalik nilai field request_method.

  • Field contoh

    request_method:GET
  • Pernyataan kueri (Test)

    * | SELECT
      reverse(request_method)
  • Hasilnya adalah TEG.

rpad function

Menambahkan akhiran string dengan karakter tertentu hingga mencapai panjang yang ditentukan.

Sintaks

rpad(x, length, rpad_string)

Parameter

Parameter

Description

x

String sumber, harus bertipe varchar.

length

Panjang yang diinginkan dari string hasil, ditentukan sebagai bilangan bulat.

  • Jika string asli lebih pendek dari length, fungsi akan menambahkan akhiran.

  • Jika string asli lebih panjang dari length, fungsi akan memotongnya menjadi length karakter.

rpad_string

Karakter atau string yang digunakan untuk penambahan akhiran.

Tipe nilai kembali

varchar.

Contoh

Contoh berikut menambahkan akhiran nol pada nilai field instance_id hingga mencapai panjang 10.

  • Field contoh

    instance_id:i-01
  • Pernyataan kueri (debug)

    * | SELECT
      rpad(instance_id, 10, '0')
  • Hasil kueri dan analisis: Kolom _col0 mengembalikan nilai i-01000000.

rtrim function

Menghapus spasi akhir dari string.

Sintaks

rtrim(x)

Parameter

Parameter

Description

x

String sumber, harus bertipe varchar.

Tipe kembali

varchar

Contoh

Kueri ini menghapus spasi akhir dari nilai field instance_id.

  • Field contoh

    instance_id:i-01 
  • Pernyataan kueri (debug)

    * | SELECT
      rtrim(instance_id)
  • Hasil kueri dan analisis: Nilai kembali kolom _col0 adalah i-01.

split function

Fungsi split memisahkan string menjadi array substring menggunakan pemisah.

Sintaks

  • Memisahkan string berdasarkan pemisah.

    split(x, delimiter)
  • Memisahkan string berdasarkan pemisah menjadi jumlah maksimum substring.

    split(x,delimiter,limit)

Parameter

Parameter

Description

x

String varchar yang akan dipisahkan.

delimiter

Pemisah yang digunakan untuk memisahkan string.

limit

Jumlah maksimum substring yang akan dikembalikan. Nilainya harus bilangan bulat positif.

Tipe nilai kembali

array

Contoh

  • Contoh 1: Memisahkan nilai field request_uri menjadi empat substring menggunakan garis miring (/) dan mengembalikan array substring tersebut.

    • Field contoh

      request_uri:/request/path-1/file-9
    • Pernyataan kueri dan analisis (Test)

      * | SELECT
        split(request_uri, '/')
    • Hasil kueri dan analisis: Kueri mengembalikan ["" ,"request","path-1","file-9"], yaitu array yang dibuat dengan memisahkan request_uri berdasarkan /.

  • Contoh 2: Gunakan garis miring (/) untuk memisahkan nilai field request_uri menjadi 3 substring dan mengembalikan kumpulan substring tersebut.

    • Field contoh

      request_uri:/request/path-1/file-9
    • Pernyataan kueri dan analisis (Test)

      * | SELECT
        split(request_uri, '/', 3)
    • Dalam hasil kueri dan analisis, nilai kolom _col0 adalah ["","request","path-1/file-9"].

Split_part function

Memisahkan string berdasarkan pemisah tertentu dan mengembalikan substring pada indeks tertentu.

Sintaks

split_part(x, delimiter, part)

Parameter

Parameter

Description

x

String yang akan dipisahkan. Nilainya harus bertipe varchar.

delimiter

String tak kosong yang digunakan sebagai pemisah.

part

Ekspresi bilangan bulat yang menentukan indeks berbasis 1 dari substring yang akan dikembalikan. Nilainya harus lebih besar dari 0.

Nilai kembali

varchar

Contoh

Pisahkan nilai field request_uri menggunakan tanda tanya (?) dan kembalikan substring pertama, yaitu path file. Kemudian, hitung jumlah permintaan untuk setiap path.

  • Field contoh

    request_uri: /request/path-2/file-6?name=value&age=18
    request_uri: /request/path-2/file-0?name=value&age=18
    request_uri: /request/path-3/file-2?name=value&age=18
  • Pernyataan kueri (Test)

    * | SELECT
      count(*) AS PV,
      split_part(request_uri, '?', 1) AS Path
    GROUP BY
      Path
    ORDER BY
      pv DESC
  • Hasil kueri dan analisis: /request/path-2/file-6 memiliki PV sebesar 49, /request/path-2/file-0 memiliki PV sebesar 47, dan /request/path-3/file-2 memiliki PV sebesar 44.

split_to_map function

Fungsi split_to_map mengurai string pasangan kunci-nilai menjadi map menggunakan dua delimiter.

Sintaks

split_to_map(x, delimiter01, delimiter02)

Parameter

Parameter

Description

x

String input yang akan diurai, harus bertipe varchar.

delimiter01

Delimiter yang memisahkan pasangan kunci-nilai.

delimiter02

Delimiter yang memisahkan kunci dari nilai dalam setiap pasangan.

Tipe kembali

map

Contoh

Gunakan koma Inggris (,) dan titik dua Inggris (:) untuk memisahkan nilai field time dan mengembalikan MAP.

  • Field contoh

    upstream_response_time:"80",request_time:"40"
  • Pernyataan kueri dan analisis

    * | SELECT
      split_to_map(time, ',', ':')
  • Fungsi mengembalikan map, yang ditampilkan dalam hasil kueri dan analisis dalam format JSON: {"request_time":"\"40\"","upstream_response_time":"\"80\""}.

Strpos function

Fungsi strpos mengembalikan posisi awal substring dalam string. Fungsi ini merupakan alias untuk fungsi position.

Sintaks

strpos(x, sub_string)

Parameter

Parameter

Description

x

String sumber yang akan dicari. Harus bertipe varchar.

sub_string

Substring yang dicari.

Tipe nilai kembali

Mengembalikan bilangan bulat yang merepresentasikan posisi awal berbasis 1 dari substring. Mengembalikan 0 jika substring tidak ditemukan.

Contoh

Contoh ini menemukan posisi karakter 'H' dalam field server_protocol.

  • Pernyataan kueri (Test)

    * | SELECT
      strpos(server_protocol, 'H')
  • Hasil kueri dan analisis: Kolom _col0 mengembalikan dua baris data, keduanya dengan nilai 1, yang menunjukkan bahwa posisi kemunculan pertama karakter H dalam field server_protocol adalah 1.

substr function

Fungsi substr mengekstraksi substring dari string, dimulai dari posisi tertentu.

Sintaks

  • Mengekstraksi substring dari posisi awal tertentu hingga akhir string.

    substr(x, start)
  • Mengekstraksi substring dengan panjang tertentu dari string, dimulai dari posisi tertentu.

    substr(x,start,length)

Parameter

Parameter

Description

x

String sumber. Harus bertipe varchar.

start

Posisi awal berbasis 1 untuk ekstraksi.

length

Bilangan bulat opsional yang menentukan jumlah karakter yang diekstraksi. Jika parameter ini dihilangkan, fungsi mengekstraksi semua karakter dari posisi start hingga akhir string.

Tipe nilai kembali

varchar.

Contoh

Mengekstraksi 4 karakter pertama dari nilai field server_protocol (bagian HTTP), lalu menghitung jumlah permintaan HTTP.

  • Field contoh

    server_protocol:HTTP/2.0
  • Pernyataan kueri (Test)

    * | SELECT
      substr(server_protocol, 1, 4) AS protocol,
      count(*) AS count
    GROUP BY
      protocol
  • Dalam hasil kueri dan analisis, nilai kolom protocol adalah HTTP, dan nilai kolom count adalah 9078.

to_utf8 function

Mengencode string ke representasi biner UTF-8.

Sintaks

to_utf8(x)

Parameter

Parameter

Description

x

String yang akan diencode. Harus bertipe varchar.

Tipe nilai kembali

varbinary

Contoh

Encode string 'log' ke format UTF-8.

  • Pernyataan kueri (Test)

    * | SELECT
      to_utf8('log')
  • Dalam hasil kueri dan analisis, nilai kembali kolom _col0 adalah bG9n.

Trim function

Menghapus spasi awal dan akhir dari string.

Sintaks

trim(x)

Parameter

Parameter

Description

x

String input, harus bertipe varchar.

Tipe kembali

varchar

Contoh

Menghapus spasi awal dan akhir dari nilai field instance_id.

  • Field contoh

    instance_id: i-01 
  • Pernyataan kueri dan analisis (Test)

    * | SELECT
      trim(instance_id)
  • Hasil kueri dan analisis: i-01

Upper function

Mengonversi string menjadi huruf kapital.

Sintaks

upper(x)

Parameter

Parameter

Description

x

Nilainya harus bertipe varchar.

Tipe nilai kembali

varchar

Contoh

Contoh ini mengonversi nilai field region menjadi huruf kapital.

  • Field contoh

    region:cn-shanghai
  • Pernyataan kueri (Test)

    * | SELECT
      upper(region)
  • Hasil kueri dan analisis adalah CN-SHANGHAI.

csv_extract_map function

Fungsi csv_extract_map mengurai string CSV satu baris dan mengembalikan map.

Sintaks

csv_extract_map(x, delimiter, quote, keys)

Parameter

Parameter

Description

x

String varchar yang berisi teks CSV satu baris.

delimiter

Karakter varchar tunggal yang memisahkan nilai dalam string.

quote

Karakter varchar tunggal yang digunakan untuk membungkus nilai.

keys

Array string yang menentukan nama kunci untuk nilai yang diekstraksi. Jumlah kunci harus sesuai dengan jumlah nilai dalam string CSV. Jika tidak sesuai, fungsi mengembalikan null.

Tipe nilai kembali

map(varchar, varchar)

Contoh

Contoh ini mengekstraksi informasi CSV dari field content.

  • Field contoh

    content: '192.168.0.100,"10/Jun/2019:11:32:16,127 +0800",example.aliyundoc.com'
  • Pernyataan kueri

    select csv_extract_map(content, ',', '"', array['ip', 'time', 'host']) as item
  • Data output

    Kueri mengembalikan catatan JSON berikut: {"ip":"192.168.0.100","host":"example.aliyundoc.com","time":"10/Jun/2019:11:32:16,127 +0800"}.

ilike function

Memeriksa apakah string sesuai dengan pola tertentu, tanpa membedakan huruf besar/kecil.

Sintaks

ilike(x, pattern)

Parameter

Parameter

Description

x

String yang akan dievaluasi. Harus bertipe varchar.

pattern

Pola karakter. Pola dapat mencakup karakter wildcard berikut:

  • Tanda persen (%) cocok dengan urutan apa pun dari nol atau lebih karakter.

  • Garis bawah (_) cocok dengan satu karakter.

Tipe kembali

boolean

Contoh

Contoh ini memeriksa apakah nilai request_uri diakhiri dengan file-6.

  • Field contoh

request_uri: '/request/path-2/File-6'
  • Pernyataan kueri

select ilike(request_uri, '%file-6')
  • Hasil kueri dan analisis

Hasil kueri dan analisis adalah true, yang menunjukkan bahwa request_uri diakhiri dengan file-6.

str_uuid

Fungsi str_uuid() mengembalikan pengidentifikasi acak 128-bit sebagai string.

Sintaks

str_uuid()

Nilai kembali

  • Tipe nilai kembali: VARCHAR

  • Format: String 36 karakter dengan 32 digit heksadesimal dan 4 tanda hubung -.

  • Struktur: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Contoh

Untuk menghasilkan batch besar pengidentifikasi unik dalam Lingkungan pengujian simulasi:

* | extend uuid = str_uuid()

Gzip_compress function

Fungsi gzip_compress mengompres string menggunakan algoritma GZIP dan mengembalikan data biner terkompres.

Sintaks

-- Metode 1: Tingkat kompresi default (6)
gzip_compress(data)
-- Metode 2: Tentukan tingkat kompresi
gzip_compress(data, compression_level)

Parameter

Parameter

Type

Description

data

VARCHAR

String yang akan dikompres.

compression_level

BIGINT

Tingkat kompresi, bilangan bulat opsional dari 1 hingga 9.

Nilai kembali

  • Tipe nilai kembali: VARBINARY

  • Description: Data biner terkompres.

Contoh

  • Contoh 1: Kompresi dasar

    * | extend compress_data =  gzip_compress('Hello World')
  • Contoh 2: Mencapai kompresi maksimum untuk teks besar

    Untuk memaksimalkan kompresi log besar (puluhan ribu karakter) dan menghemat ruang penyimpanan, gunakan level 9:

    * | extend compress_data =  gzip_compress('Hello World',9)

gzip_decompress

gzip_decompress mendekompres data biner terkompres GZIP (Varbinary) dan mengembalikan konten teks biasa aslinya.

Sintaks

gzip_decompress(binary_data)

Parameter

binary_data harus berupa data terkompres GZIP yang valid, biasanya dihasilkan oleh fungsi gzip_compress. Jika input tidak dalam format GZIP standar, fungsi mengembalikan NULL.

Nilai kembali

  • Tipe nilai kembali: VARCHAR

  • Description: Konten teks biasa asli setelah dekompresi.


Contoh

  • Pipeline kompresi dan dekompresi sederhana:

    * | extend original_content =  gzip_decompress(gzip_compress('Hello SLS!'))
    -- Output: "Hello SLS!"

Search function

Fungsi search melakukan pencarian teks lengkap pada data log dalam pernyataan analitik SQL. Sebagai fungsi SQL standar, fungsi ini mendukung kondisi kueri kompleks, termasuk operasi boolean, kueri berbasis field, kueri fuzzy, dan kueri rentang.

Batasan

Batasan

Description

Batasan per subkueri

Anda hanya dapat menggunakan satu fungsi search() dalam setiap subkueri (SELECT dasar). Jika Anda memerlukan beberapa kondisi kueri, gabungkan kondisi tersebut ke dalam satu panggilan fungsi search(), misalnya, search('error AND timeout').

Batasan operator OR

Fungsi search() tidak dapat digabungkan dengan operator OR SQL. Namun, Anda dapat menggunakan operator OR di dalam fungsi search(). Misalnya, search('error OR warning') diperbolehkan.

Indeks telah dibuat dan tidak dalam mode scan.

Fungsi search tidak didukung dalam mode scan.

Konflik sintaks kueri

Anda tidak dapat menggunakan fungsi search ketika input sintaks kueri berisi kondisi filter aktual. Anda dapat menggunakan fungsi ini ketika input sintaks kueri kosong atau berupa *.

Tipe parameter

Parameter untuk fungsi search() harus berupa literal string. Fungsi ini tidak mendukung nilai dinamis seperti referensi kolom, variabel, atau ekspresi fungsi.

Jumlah parameter

Fungsi harus memiliki tepat satu parameter.

Sintaks

search(search_expression)

Penggunaan dalam pernyataan analitik SQL:

* | SELECT ... FROM log WHERE search('search_expression')

Penting: Fungsi search hanya dapat digunakan dalam klausa WHERE.

Parameter

Parameter

Description

search_expression

search_expression adalah literal string yang merepresentasikan ekspresi kueri. Ekspresi ini harus sepenuhnya mematuhi sintaks kueri SLS dan menyediakan fitur yang sama seperti yang dijelaskan dalam Sintaks dan fitur kueri, seperti kueri teks lengkap, kueri field, operasi Boolean, kueri fuzzy, dan kueri rentang.

Tipe nilai kembali

Tipe BOOLEAN. true menunjukkan bahwa baris saat ini sesuai dengan kondisi kueri, dan false menunjukkan bahwa tidak sesuai.

Contoh

  • Contoh 1: Temukan log yang berisi error dan timeout.

    * | SELECT * FROM log WHERE search('error AND timeout')
  • Contoh 2: Temukan log di mana field status bernilai 200.

    * | SELECT * FROM log WHERE search('status: 200')
  • Contoh 3: Gabungkan fungsi search() dengan predikat SQL untuk menemukan log di mana status bernilai 200 dan request_time lebih besar dari 100.

    * | SELECT * FROM log
        WHERE search('status: 200') AND request_time > 100

    Untuk informasi lebih lanjut, lihat Gunakan fungsi search untuk melakukan pencarian teks lengkap.