全部产品
Search
文档中心

OpenSearch:Konfigurasikan kondisi untuk memfilter kolom dalam sumber data ApsaraDB RDS dan PolarDB

更新时间:Jun 26, 2025

Pendahuluan

  • Tipe Kolom yang Didukung: TINYINT, SMALLINT, INTEGER, BIGINT, FLOAT, REAL, DOUBLE, NUMERIC, DECIMAL, TIME, dan TIMESTAMP.

  • Operator Perbandingan yang Didukung: <, >, <=, >=, =, !=, <>. Catatan: =, !=, dan <> dapat digunakan untuk memfilter kolom tipe numerik dan karakter.

  • Nilai yang Didukung: Semua nilai termasuk null.

Contoh

1. Memfilter Kolom Tipe Karakter: field_string='a' atau field_string!='b'. Anda dapat menggunakan tanda kutip tunggal ('), tanda kutip ganda ("), atau tanpa tanda kutip sama sekali. Contoh berikut menunjukkan kondisi yang dapat digunakan untuk memfilter kolom kosong dan kolom dengan nilai null:

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

2. Memfilter Kolom dengan Nilai Null: Contoh berikut menunjukkan kondisi yang dapat digunakan untuk memfilter kolom tipe numerik atau tipe karakter dengan nilai null.

# Kondisi filter berikut valid:
field = null 
field = NULL
field != null
field != NULL
field <> null
field <> NULL

3. Memfilter Kolom Tipe DATE atau DATETIME: createtime>'2021-02-05 00:00:00'.

4. Memfilter Kolom Berdasarkan Beberapa Kondisi: status=1,literal_id='abcd',createtime>'2021-02-05 00:00:00'.

Catatan penggunaan

  • Anda hanya dapat memfilter kolom dari sumber data ApsaraDB RDS dan PolarDB.

  • Saat mengonfigurasi kondisi untuk memfilter data dari sumber data, gunakan kolom tabel di database sumber alih-alih kolom dalam skema aplikasi OpenSearch.

  • Setelah kondisi filter diterapkan, hanya entri data yang memenuhi kondisi tersebut yang akan ditarik. Kondisi filter berlaku untuk data penuh dan inkremental. Sebagai contoh, setelah kondisi filter status=1 dikonfigurasi, dokumen status=1 di ApsaraDB RDS diubah menjadi status=2. Dalam hal ini, dokumen tersebut tidak akan ditarik ke OpenSearch.

  • Hanya operasi logika AND yang didukung. Tanda koma (,) digunakan untuk menerapkan operasi logika AND. Operasi logika OR tidak didukung.

## Klausul WHERE dalam Pernyataan SQL:
where status=1 and type=2

# Konfigurasikan pemfilteran sumber data di OpenSearch.
where status=1 and type=2 # Tidak valid.
status=1 and type=2 # Tidak valid.
status=1,type=2 # Valid.
  • Jika Anda perlu memfilter kolom dengan nilai null atau non-null, Anda tidak dapat menggunakan is null atau is not null. Untuk informasi lebih lanjut tentang sintaksis yang valid, lihat kondisi untuk memfilter kolom dengan nilai null di bagian "Contoh" topik ini.

  • Jika Anda perlu memfilter kolom tipe DATE atau DATETIME, seperti kolom bernama createtime, waktu dalam kondisi filter harus dalam format yang diminta. Contoh: createtime>'2018-03-01 00:00:00'.

  • Fungsi dan ekspresi, seperti in(type,1,2,3) dan length(title)>10, tidak didukung.

  • like dan not like, seperti like '%aaa' dan not like '%bbb', tidak didukung.

  • Persamaan identik, seperti 1=1, tidak didukung.

  • Jika tabel utama dan sekunder dikonfigurasikan untuk sumber data, kami sarankan Anda memfilter data di kedua tabel utama dan sekunder. Ini mencegah data di tabel sekunder memakan ruang penyimpanan yang berlebihan.