All Products
Search
Document Center

OpenSearch:Kondisi filter untuk sumber data RDS dan PolarDB

Last Updated:Mar 19, 2026

Pendahuluan

  • Jenis bidang yang didukung: TINYINT, SMALLINT, INTEGER, BIGINT, FLOAT, REAL, DOUBLE, NUMERIC, DECIMAL, TIME, dan TIMESTAMP.

  • Operator perbandingan yang didukung: <, >, <=, >=, =, !=, <>. Catatan: Operator =, !=, dan <> dapat digunakan untuk memfilter bidang bertipe numerik maupun karakter.

  • Nilai yang didukung: NULL atau nilai lainnya.

Contoh

Filter berdasarkan tipe karakter

Misalnya, field_string='a' atau field_string!='b'.

Catatan: Anda dapat menggunakan tanda kutip tunggal ('), tanda kutip ganda ("), atau tanpa tanda kutip sama sekali untuk nilai karakter.

field = ''
field != ''
field <> ''
field = 'null'
field = 'NULL'
field != 'null'
field != 'NULL'
field <> 'null'
field <> 'NULL'

Filter berdasarkan nilai NULL

Catatan: Ini berlaku untuk bidang numerik maupun karakter.

# Semua sintaks berikut valid
field = null 
field = NULL
field != null
field != NULL
field <> null
field <> NULL

Filter berdasarkan tipe tanggal atau datetime

createtime>'2021-02-05 00:00:00'

Filter berdasarkan beberapa kondisi

status=1,literal_id='abcd',createtime>'2021-02-05 00:00:00'

Catatan penggunaan

  • Fitur filtering sumber data tersedia untuk sumber data RDS dan PolarDB.

  • Untuk kondisi filter, gunakan nama bidang dari tabel database, bukan nama bidang dari skema aplikasi OpenSearch.

  • Saat kondisi filter aktif, hanya catatan yang memenuhi kondisi tersebut yang ditarik—berlaku baik untuk data penuh maupun data inkremental.

    Misalnya, jika Anda mengonfigurasi kondisi filter status=1 dan status dokumen di RDS kemudian diubah dari 1 menjadi 2, dokumen tersebut akan dihapus dari OpenSearch.

  • Hanya operator logika AND yang didukung. Gunakan koma (,) untuk merepresentasikan operator AND. Operator OR tidak didukung.

    ## Klausul WHERE dalam pernyataan SQL:
    where status=1 and type=2
    
    # Konfigurasi pada filter sumber data OpenSearch:
    where status=1 and type=2 # Sintaks salah
    status=1 and type=2 # Sintaks salah
    status=1,type=2 # Sintaks benar
  • Untuk memeriksa nilai null, jangan gunakan is null atau is not null. Lihat contoh "Filter berdasarkan nilai NULL" untuk sintaks yang benar.

  • Untuk memfilter bidang bertipe DATE atau DATETIME, seperti bidang bernama createtime dalam tabel database, waktu dalam kondisi filter harus mengikuti format yang ditentukan. Contoh: createtime>'2018-03-01 00:00:00'.

  • Operasi kompleks seperti fungsi dan ekspresi tidak didukung.

    Misalnya: in(type,1,2,3) atau length(title)>10.

  • Operator like dan not like tidak didukung.

    Misalnya: like '%aaa' atau not like '%bbb'.

  • Identitas persamaan tidak didukung.

    Misalnya: 1=1.

  • Jika sumber data memiliki tabel utama dan tabel secondary, terapkan kondisi filter pada kedua tabel tersebut untuk mencegah tabel secondary mengonsumsi ruang penyimpanan yang tidak perlu.