All Products
Search
Document Center

Simple Log Service:Fungsi string

Last Updated:Feb 27, 2026

Topik ini menjelaskan sintaks dan memberikan contoh fungsi string.

Simple Log Service mendukung fungsi string berikut.

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

Nama Fungsi

Sintaks

Deskripsi

Didukung SQL

Didukung SPL

Fungsi chr

chr(x)

Mengonversi kode ASCII ke karakter.

Fungsi codepoint

codepoint(x)

Mengonversi karakter ke kode ASCII.

Fungsi concat

concat(x, y...)

Menggabungkan beberapa string menjadi satu string.

Fungsi from_utf8

from_utf8(x)

Mendekode string biner ke format encoding UTF-8 dan mengganti karakter UTF-8 yang tidak valid dengan karakter default U+FFFD.

from_utf8(x, replace_string)

Mendekode string biner ke format encoding UTF-8 dan mengganti karakter UTF-8 yang tidak valid dengan string kustom.

Fungsi length

length(x)

Menghitung panjang string.

Fungsi levenshtein_distance

levenshtein_distance(x, y)

Menghitung jarak edit minimum antara x dan y.

×

Fungsi lower

lower(x)

Mengonversi string ke huruf kecil.

Fungsi lpad

lpad(x, length, lpad_string)

Menambahkan karakter tertentu di awal string hingga mencapai panjang yang ditentukan dan mengembalikan string hasilnya.

Fungsi ltrim

ltrim(x)

Menghapus spasi dari awal string.

Fungsi normalize

normalize(x)

Memformat string dalam format NFC.

×

Fungsi position

position(sub_string in x)

Mengembalikan posisi substring dalam string.

×

Fungsi replace

replace(x, sub_string )

Menghapus karakter yang cocok dari string.

replace(x, sub_string, replace_string)

Mengganti karakter yang cocok dalam string dengan karakter tertentu.

Fungsi reverse

reverse(x)

Mengembalikan string dalam urutan terbalik.

Fungsi rpad

rpad(x, length, rpad_string)

Menambahkan karakter tertentu di akhir string hingga mencapai panjang yang ditentukan dan mengembalikan string hasilnya.

Fungsi rtrim

rtrim(x)

Menghapus spasi dari akhir string.

Fungsi split

split(x, delimeter)

Memisahkan string menggunakan pemisah tertentu dan mengembalikan kumpulan substring.

split(x, delimeter, limit)

Memisahkan string menggunakan pemisah tertentu, membatasi jumlah pemisahan menggunakan limit, lalu mengembalikan kumpulan substring hasil pemisahan.

Fungsi split_part

split_part(x, delimeter, part)

Memisahkan string menggunakan pemisah tertentu dan mengembalikan konten pada posisi tertentu.

Fungsi split_to_map

split_to_map(x, delimiter01, delimiter02)

Memisahkan string menggunakan pemisah pertama tertentu, lalu memisahkan string tersebut lagi menggunakan pemisah kedua tertentu.

Fungsi strpos

strpos(x, sub_string)

Mengembalikan posisi substring dalam string. Fungsi ini setara dengan fungsi position(sub_string in x).

Fungsi substr

substr(x, start)

Mengembalikan substring dari posisi tertentu dalam string.

substr(x, start, length)

Mengembalikan substring dengan panjang tertentu dari posisi tertentu dalam string.

Fungsi to_utf8

to_utf8(x)

Mengonversi string ke format encoding UTF-8.

Fungsi trim

trim(x)

Menghapus spasi dari awal dan akhir string.

Fungsi upper

upper(x)

Mengonversi string ke huruf besar.

Fungsi csv_extract_map

csv_extract_map(x, delimeter, quote, keys)

Ekstrak informasi CSV satu baris dari string target.

×

Fungsi ilike

ilike(x, pattern)

Memeriksa apakah string cocok dengan pola karakter tertentu. Pemeriksaan ini tidak membedakan huruf besar/kecil.

Fungsi str_uuid

str_uuid()

Menghasilkan ID acak 128-bit dan mengembalikannya dalam format string.

×

Fungsi gzip_compress

gzip_compress(data, compression_level)

Menerima objek string, mengompresinya menggunakan algoritma GZIP, dan mengembalikan aliran biner terkompresi.

×

Fungsi gzip_decompress

gzip_decompress(binary_data)

Menerima data biner terkompresi GZIP (Varbinary) dan mendekompresinya.

×

Fungsi search

search(search_expression)

Menjalankan pencarian teks lengkap pada data log dalam pernyataan analitik SQL. Fungsi ini mendukung operasi Boolean, pencarian berdasarkan field, kueri fuzzy, dan kueri rentang.

×

Fungsi chr

Fungsi chr mengonversi kode ASCII ke karakter.

Sintaks

chr(x)

Parameter

Parameter

Deskripsi

x

Kode ASCII.

Tipe nilai kembalian

varchar.

Contoh

Kueri berikut memeriksa apakah nilai field region dimulai dengan c. Kode ASCII 99 merepresentasikan huruf kecil c.

  • Field contoh

    region:cn-shanghai
  • Pernyataan kueri (Test)

    * | SELECT
      substr(region, 1, 1) = chr(99)
  • Hasil kueri dan analisischr

Fungsi codepoint

Fungsi codepoint mengonversi karakter ke kode ASCII.

Sintaks

codepoint(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

integer.

Contoh

Kueri berikut memeriksa apakah nilai field region dimulai dengan c. Kode ASCII 99 merepresentasikan 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 analisiscodepoint

Fungsi concat

Fungsi concat menggabungkan beberapa string menjadi satu string.

Sintaks

concat(x, y...)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

y

Nilainya bertipe varchar.

Tipe nilai kembalian

Tipe data VARCHAR.

Contoh

Kueri berikut menggabungkan nilai field region dan field request_method.

  • Field contoh

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

    * | SELECT
      concat(region, '-', time)
  • Hasil kueri dan analisisconcat函数

Fungsi from_utf8

Fungsi from_utf8 mendekode string biner ke format encoding UTF-8.

Sintaks

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

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

    from_utf8(x,replace_string)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe binary.

replace_string

String yang digunakan untuk penggantian. String hanya boleh berupa satu karakter atau spasi.

Tipe nilai kembalian

Tipe data VARCHAR.

Contoh

  • Kueri berikut mendekode string biner 0x80 ke format encoding UTF-8 dan mengganti karakter UTF-8 yang tidak valid dalam hasil yang dikembalikan dengan karakter default U+FFFD. U+FFFD ditampilkan sebagai karakter pengganti default.

    • Pernyataan kueri (Test)

      * | SELECT
        from_utf8(from_base64('0x80'))
    • Hasil kueri dan analisisfrom_utf8

  • Kueri berikut mendekode string biner 0x80 ke format encoding UTF-8 dan mengganti karakter UTF-8 yang tidak valid dalam hasil yang dikembalikan dengan 0.

    • Pernyataan kueri (Test)

      * | SELECT
        from_utf8(from_base64('0x80'), '0')
    • Hasil kueri dan analisisfrom_utf8

Fungsi length

Fungsi length menghitung panjang string.

Sintaks

length(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

bigint.

Contoh

Kueri berikut 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 analisislength函数

Fungsi levenshtein_distance

Fungsi levenshtein_distance menghitung jarak edit minimum antara dua string.

Sintaks

levenshtein_distance(x, y)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

y

Nilainya bertipe varchar.

Tipe nilai kembalian

bigint.

Contoh

Kueri berikut menghitung jarak edit minimum antara nilai field instance_id dan nilai field owner_id.

  • Field contoh

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

    * | SELECT
      levenshtein_distance(owner_id, instance_id)
  • Hasil kueri dan analisislevenshtein_distance

Fungsi lower

Fungsi lower mengonversi string ke huruf kecil.

Sintaks

lower(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

Tipe VARCHAR.

Contoh

Kueri berikut mengonversi nilai field request_method ke huruf kecil.

  • Field contoh

    request_method:GET
  • Pernyataan kueri (Test)

    * | SELECT
      lower(request_method)
  • Hasil kueri dan analisislower函数

Fungsi lpad

Fungsi lpad menambahkan karakter tertentu di awal string target hingga mencapai panjang yang ditentukan.

Sintaks

lpad(x, length, lpad_string)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

length

Bilangan bulat yang menentukan panjang string hasil.

  • Jika panjang string kurang dari length, awal string ditambahkan dengan karakter tertentu.

  • Jika panjang string lebih dari length, hanya length karakter pertama dari string yang dikembalikan.

lpad_string

Karakter padding baru tersedia.

Tipe nilai kembalian

varchar.

Contoh

Kueri berikut menambahkan 0 di awal nilai field instance_id hingga total panjangnya menjadi 10 karakter.

  • Field contoh

    instance_id:i-01
  • Pernyataan kueri (Test)

    * | SELECT
      lpad(instance_id, 10, '0')
  • Hasil kueri dan analisislpad

Fungsi ltrim

Fungsi ltrim menghapus spasi awal dari string.

Sintaks

ltrim(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

tipe varchar.

Contoh

Kueri berikut menghapus spasi awal dari nilai field region.

  • Field contoh

    region: cn-shanghai
  • Pernyataan kueri (Test)

    * | SELECT
      ltrim(region)
  • Hasil kueri dan analisisltrim

Fungsi normalize

Fungsi normalize memformat string dalam format Normalization Form C (NFC).

Sintaks

normalize(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

varchar.

Contoh

Kueri berikut memformat string schön dalam format NFC.

  • Pernyataan kueri (Test)

    * | SELECT
      normalize('schön')
  • Hasil kueri dan analisisnormalize

Fungsi position

Fungsi position mengembalikan posisi substring target dalam string.

Sintaks

position(sub_string in x)

Parameter

Parameter

Deskripsi

sub_string

Substring target.

x

Nilainya bertipe varchar.

Tipe nilai kembalian

int. Nilainya berbasis 1. Jika substring target tidak ditemukan, fungsi mengembalikan 0.

Contoh

Kueri berikut menemukan posisi substring cn dalam nilai field region.

  • Field contoh

    region:cn-shanghai
  • Pernyataan kueri (Test)

    * | SELECT
      position('cn' in region)
  • Hasil kueri dan analisisposition函数

Fungsi replace

Fungsi replace menghapus karakter dari string atau menggantinya dengan karakter lain.

Sintaks

  • Anda dapat menghapus karakter yang cocok dari string.

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

    replace(x, sub_string, replace_string)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

sub_string

Substring target.

replace_string

Substring yang digunakan untuk penggantian.

Tipe nilai kembalian

varchar.

Contoh

  • Contoh 1: Kueri berikut mengganti cn dalam nilai field region dengan China.

    • Field contoh

      region:cn-shanghai
    • Kueri contoh (Debug)

      * | select
        replace(region, 'cn', 'China')
    • Hasil kueri dan analisisreplace

  • Contoh 2: Kueri berikut menghapus cn- dari nilai field region.

    • Field contoh

      region:cn-shanghai
    • Pernyataan kueri (Test)

      * | select
        replace(region, 'cn-')
    • Hasil kueri dan analisisreplace

Fungsi reverse

Fungsi reverse mengembalikan string dalam urutan terbalik.

Sintaks

reverse(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

Tipe data VARCHAR.

Contoh

Urutkan nilai field request_method secara menurun.

  • Field contoh

    request_method:GET
  • Pernyataan kueri (Test)

    * | SELECT
      reverse(request_method)
  • Hasil kueri dan analisisreverse

Fungsi rpad

Fungsi rpad menambahkan karakter tertentu di akhir string hingga mencapai panjang yang ditentukan.

Sintaks

rpad(x, length, rpad_string)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

length

Bilangan bulat yang menentukan panjang string hasil.

  • Jika panjang string kurang dari length, akhir string ditambahkan dengan karakter tertentu.

  • Jika panjang string lebih dari length, hanya length karakter pertama dari string yang dikembalikan.

rpad_string

Karakter baru untuk padding.

Tipe nilai kembalian

Tipe data varchar.

Contoh

Kueri berikut menambahkan 0 di akhir nilai field instance_id hingga total panjangnya menjadi 10 karakter.

  • Field contoh

    instance_id:i-01
  • Pernyataan kueri (debug)

    * | SELECT
      rpad(instance_id, 10, '0')
  • Hasil kueri dan analisisrpad

Fungsi rtrim

Fungsi rtrim menghapus spasi akhir dari string.

Sintaks

rtrim(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

varchar.

Contoh

Kueri berikut menghapus spasi akhir dari nilai field instance_id.

  • Field contoh

    instance_id:i-01 
  • Pernyataan kueri (debug)

    * | SELECT
      rtrim(instance_id)
  • Hasil kueri dan analisisrtrim

Fungsi split

Fungsi split memisahkan string menggunakan pemisah tertentu dan mengembalikan array substring hasilnya.

Sintaks

  • Memisahkan string menggunakan pemisah tertentu.

    split(x, delimeter)
  • Memisahkan string menggunakan pemisah tertentu menjadi jumlah substring tertentu.

    split(x,delimeter,limit)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

delimeter

Pemisah.

limit

Jumlah pemisahan. Nilainya harus bilangan bulat lebih dari 0.

Tipe nilai kembalian

Tipe datanya adalah array.

Contoh

  • Contoh 1: Kueri berikut memisahkan nilai field request_uri menjadi empat substring menggunakan garis miring (/) sebagai pemisah dan mengembalikan array hasilnya.

    • Field contoh

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

      * | SELECT
        split(request_uri, '/')
    • Hasil kueri dan analisissplit

  • Contoh 2: Kueri berikut memisahkan nilai field request_uri menjadi tiga substring menggunakan garis miring (/) sebagai pemisah dan mengembalikan array hasilnya.

    • Field contoh

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

      * | SELECT
        split(request_uri, '/', 3)
    • Hasil kueri dan analisissplit

Fungsi split_part

Fungsi split_part memisahkan string menggunakan pemisah tertentu dan mengembalikan substring pada posisi tertentu.

Sintaks

split_part(x, delimeter, part)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

delimeter

Pemisah.

part

Bilangan bulat lebih dari 0.

Tipe nilai kembalian

Tipe data VARCHAR.

Contoh

Kueri berikut memisahkan nilai field request_uri menggunakan tanda tanya (?) dan mengembalikan substring pertama, yaitu path file. Kueri ini kemudian menghitung 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 analisisTop 3 endpoints

Fungsi split_to_map

Fungsi split_to_map memisahkan string menggunakan pemisah pertama tertentu, lalu memisahkan hasilnya menggunakan pemisah kedua tertentu.

Sintaks

split_to_map(x, delimiter01, delimiter02)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

delimeter01

Pemisah.

delimeter02

Pemisah.

Tipe nilai kembalian

Jenis peta

Contoh

Kueri berikut memisahkan nilai field time menggunakan koma (,) dan titik dua (:). Hasilnya berupa map.

  • Field contoh

    time:upstream_response_time:"80", request_time:"40"
  • Pernyataan kueri

    * | SELECT
      split_to_map(time, ',', ':')
  • Hasil kueri dan analisissplit_to_map

Fungsi strpos

Fungsi strpos mengembalikan posisi substring target dalam string. Fungsi ini setara dengan fungsi position.

Sintaks

strpos(x, sub_string)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

sub_string

Substring target.

Tipe nilai kembalian

int. Nilainya berbasis 1. Jika substring target tidak ditemukan, fungsi mengembalikan 0.

Contoh

Kueri berikut mengembalikan posisi huruf H dalam nilai field server_protocol.

  • Pernyataan kueri (Test)

    * | SELECT
      strpos(server_protocol, 'H')
  • Hasil kueri dan analisisstrpos

Fungsi substr

Fungsi substr mengembalikan substring dari posisi tertentu dalam string.

Sintaks

  • Mengembalikan substring dari posisi tertentu dalam string.

    substr(x, start)
  • Mengembalikan substring dengan panjang tertentu dari posisi awal tertentu.

    substr(x,start,length)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

start

Posisi tempat substring mulai diekstraksi. Nilainya dimulai dari 1.

length

Panjang substring.

Tipe nilai kembalian

varchar.

Contoh

Kueri berikut mengekstrak empat karakter pertama (bagian HTTP) dari nilai field server_protocol. Kueri ini kemudian menghitung jumlah permintaan yang menggunakan protokol HTTP.

  • Field contoh

    server_protocol:HTTP/2.0
  • Pernyataan kueri (Test)

    * | SELECT
      substr(server_protocol, 1, 4) AS protocol,
      count(*) AS count
    GROUP BY
      server_protocol
  • Hasil kueri dan analisissubstr

Fungsi to_utf8

Fungsi to_utf8 mengkodekan string ke representasi biner UTF-8.

Sintaks

to_utf8(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

Tipe data varbinary.

Contoh

Mengonversi string log ke format encoding UTF-8.

  • Pernyataan kueri (Test)

    * | SELECT
      to_utf8('log')
  • Hasil kueri dan analisisto_utf8

Fungsi trim

Fungsi trim menghapus spasi awal dan akhir dari string.

Sintaks

trim(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

Tipe VARCHAR

Contoh

Kueri berikut menghapus spasi awal dan akhir dari nilai field instance_id.

  • Field contoh

    instance_id: i-01 
  • Pernyataan kueri (Test)

    * | SELECT
      trim(instance_id)
  • Hasil kueri dan analisisrtrim

Fungsi upper

Fungsi upper mengonversi string target ke huruf besar.

Sintaks

upper(x)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

Tipe nilai kembalian

varchar.

Contoh

Kueri berikut mengonversi nilai field region ke huruf besar.

  • Field contoh

    region:cn-shanghai
  • Pernyataan kueri (Test)

    * | SELECT
      upper(region)
  • Hasil kueri dan analisisupper函数

Fungsi csv_extract_map

Fungsi csv_extract_map mengekstrak informasi CSV satu baris dari string target.

Sintaks

csv_extract_map(x, delimeter, quote, keys)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

delimeter

Pemisah CSV. Nilainya bertipe varchar dan panjangnya 1.

quote

Kutipan CSV. Nilainya bertipe varchar dan panjangnya 1.

keys

Nama kunci untuk output informasi CSV. Nilainya bertipe array. Jika jumlah elemennya berbeda dengan jumlah informasi CSV dalam data, maka dikembalikan null.

Tipe nilai kembalian

map(varchar, varchar).

Contoh

Kueri berikut mengekstrak 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

    image

Fungsi ilike

Fungsi ilike memeriksa apakah string input cocok dengan pola karakter tertentu. Pemeriksaan ini tidak membedakan huruf besar/kecil.

Sintaks

ilike(x, pattern)

Parameter

Parameter

Deskripsi

x

Nilainya bertipe varchar.

pattern

Pola karakter, yang mencakup string dan karakter wildcard. Tabel berikut menjelaskan karakter wildcard.

  • Tanda persen (%) merepresentasikan sejumlah karakter apa pun.

  • Garis bawah (_) merepresentasikan satu karakter.

Tipe nilai kembalian

Tipe Boolean

Contoh

Kueri berikut memeriksa apakah request_uri diakhiri dengan file-6.

  • Field contoh

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

select ilike(request_uri, '%file-6')
  • Data output

image.png

Fungsi str_uuid

Fungsi str_uuid() menghasilkan ID acak 128-bit dan mengembalikannya sebagai string.

Sintaks

str_uuid()

Nilai kembalian

  • Tipe nilai kembalian: VARCHAR

  • Format: String standar 36 karakter yang berisi 32 digit heksadesimal dan empat tanda hubung -.

  • Contoh struktur: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Contoh

Contoh ini menunjukkan cara menghasilkan banyak pengidentifikasi unik dengan cepat di lingkungan staging.

* | extend uuid = str_uuid()

Fungsi gzip_compress

Fungsi gzip_compress menerima objek string, mengompresinya menggunakan algoritma GZIP, dan mengembalikan data biner terkompresi.

Sintaks

-- Metode 1: Tingkat kompresi default (6)
gzip_compress(data)

-- Metode 2: Tentukan tingkat kompresi
gzip_compress(data, compression_level)

Parameter

Parameter

Tipe

Deskripsi

data

VARCHAR

Konten string yang akan dikompresi.

compression_level

BIGINT

Tingkat kompresi. Nilainya bilangan bulat dari 1 hingga 9.

Nilai kembalian

  • Tipe nilai kembalian: VARBINARY

  • Deskripsi: Data biner terkompresi.

Contoh

  • Contoh 1: Kompresi dasar

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

    Jika Anda memiliki entri log yang panjangnya puluhan ribu karakter dan ruang penyimpanan menjadi perhatian, gunakan level 9:

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

Fungsi gzip_decompress

Fungsi gzip_decompress menerima data biner terkompresi GZIP (Varbinary) dan mendekompresinya.

Sintaks

gzip_decompress(binary_data)

Parameter

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

Nilai kembalian

  • Tipe nilai kembalian: VARCHAR

  • Deskripsi: Konten teks biasa asli setelah dekompresi.


Contoh

  • Pipeline kompresi dan dekompresi sederhana:

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

fungsi pencarian

Fungsi search melakukan pencarian teks lengkap pada data log dalam pernyataan analitik SQL. Fungsi search disediakan sebagai fungsi SQL standar dan mendukung kondisi kueri kompleks, termasuk operasi Boolean, pencarian berdasarkan field, kueri fuzzy, dan kueri rentang.

Batasan

Batasan

Deskripsi

Batasan instans tunggal

Hanya satu fungsi search() yang dapat digunakan dalam setiap subkueri (SELECT dasar). Jika Anda memerlukan beberapa kondisi kueri, gabungkan semuanya ke dalam satu panggilan fungsi search(), seperti search('error AND timeout').

Batasan operator OR

Fungsi search() tidak dapat digunakan dengan operator OR di lapisan SQL. Anda dapat menggunakan OR di dalam fungsi search, seperti search('error OR warning').

Anda telah membuat indeks dan tidak berada dalam mode scan.

Fungsi search tidak didukung dalam mode scan.

Konflik input sintaks kueri

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

Tipe parameter

Parameter fungsi search harus berupa literal string. Nilai dinamis seperti referensi kolom, variabel, atau ekspresi fungsi tidak didukung.

Jumlah parameter

Fungsi harus menerima tepat satu parameter.

Sintaks

search(search_expression)

Format penggunaan dalam pernyataan kueri adalah sebagai berikut:

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

Penting: Fungsi search hanya dapat digunakan dalam klausa WHERE.

Parameter

Parameter

Deskripsi

search_expression

Literal string yang merepresentasikan ekspresi kueri. search_expression harus sepenuhnya mematuhi sintaks kueri Simple Log Service dan menyediakan fitur yang sama seperti sintaks kueri, termasuk pencarian teks lengkap, pencarian berdasarkan field, operasi Boolean, kueri fuzzy, dan kueri rentang.

Tipe nilai kembalian

BOOLEAN. true menunjukkan bahwa baris saat ini cocok dengan kondisi kueri. false menunjukkan bahwa baris saat ini tidak cocok dengan kondisi kueri.

Contoh

  • Contoh 1: Kueri berikut menggunakan fungsi search untuk menemukan log yang berisi "error" dan "timeout".

    * | SELECT * FROM log WHERE search('error AND timeout')
  • Contoh 2: Kueri berikut menggunakan fungsi search untuk melakukan pencarian berdasarkan field untuk log di mana field status bernilai 200.

    * | SELECT * FROM log WHERE search('status: 200')
  • Contoh 3: Kueri berikut menggabungkan fungsi search dengan predikat SQL menggunakan AND untuk menemukan log di mana statusnya 200 dan request_time lebih dari 100.

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

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