🚀 Coba Zilliz Cloud, Milvus yang sepenuhnya terkelola, secara gratis—rasakan performa 10x lebih cepat! Coba Sekarang>>

milvus-logo
LFAI
Beranda
  • Panduan Pengguna
  • Home
  • Docs
  • Panduan Pengguna

  • Cari & Beri Peringkat Ulang

  • Penyaringan

  • Operator Dasar

Operator Dasar

Milvus menyediakan serangkaian operator dasar yang kaya untuk membantu Anda memfilter dan menanyakan data secara efisien. Operator-operator ini memungkinkan Anda untuk mempersempit kondisi pencarian Anda berdasarkan bidang skalar, perhitungan numerik, kondisi logika, dan banyak lagi. Memahami cara menggunakan operator-operator ini sangat penting untuk membuat kueri yang tepat dan memaksimalkan efisiensi pencarian Anda.

Operator perbandingan

Operator perbandingan digunakan untuk memfilter data berdasarkan persamaan, ketidaksamaan, atau ukuran. Operator ini dapat digunakan untuk bidang numerik, teks, dan tanggal.

Operator Perbandingan yang Didukung.

  • == (Sama dengan)

  • != (Tidak sama dengan)

  • > (Lebih besar dari)

  • < (Kurang dari)

  • >= (Lebih besar dari atau sama dengan)

  • <= (Kurang dari atau sama dengan)

Contoh 1: Memfilter dengan Lebih besar dari atau sama dengan (>=)

Jika Anda ingin menemukan semua entitas dengan rating lebih besar dari atau sama dengan 4.

filter = 'rating >= 4'

Contoh 2: Memfilter dengan Kurang Dari atau Sama Dengan (<=)

Untuk menemukan entitas dengan discount kurang dari atau sama dengan 10%.

filter = 'discount <= 10'

Operator rentang

Operator rentang membantu memfilter data berdasarkan set atau rentang nilai tertentu.

Operator Rentang yang Didukung.

  • IN: Digunakan untuk mencocokkan nilai dalam set atau rentang tertentu.

  • LIKE: Digunakan untuk mencocokkan pola (sebagian besar untuk bidang teks).

Contoh 1: Menggunakan IN untuk Mencocokkan Beberapa Nilai

Jika Anda ingin menemukan semua entitas di mana color adalah "merah", "hijau", atau "biru".

filter = 'color in ["red", "green", "blue"]'

Ini berguna ketika Anda ingin memeriksa keanggotaan dalam daftar nilai.

Contoh 2: Menggunakan LIKE untuk Pencocokan Pola

Operator LIKE digunakan untuk pencocokan pola dalam bidang string. Operator ini dapat mencocokkan substring di berbagai posisi dalam teks: sebagai awalan, akhiran, atau akhiran. Operator LIKE menggunakan simbol % sebagai wildcard, yang dapat mencocokkan sejumlah karakter (termasuk nol).

Pencocokan Awalan (Dimulai dengan)

Untuk melakukan pencocokan awalan, di mana string dimulai dengan pola tertentu, Anda dapat menempatkan pola di awal dan menggunakan % untuk mencocokkan karakter apa pun yang mengikutinya. Misalnya, untuk menemukan semua produk yang name -nya dimulai dengan "Prod".

filter = 'name LIKE "Prod%"'

Ini akan mencocokkan semua produk yang namanya dimulai dengan "Prod", seperti "Produk A", "Produk B", dll.

Pencocokan Akhiran (Berakhiran dengan)

Untuk pencocokan akhiran, di mana string diakhiri dengan pola tertentu, letakkan simbol % di awal pola. Misalnya, untuk menemukan semua produk yang name -nya diakhiri dengan "XYZ".

filter = 'name LIKE "%XYZ"'

Ini akan mencocokkan semua produk yang namanya diakhiri dengan "XYZ", seperti "ProductXYZ", "SampleXYZ", dll.

Pencocokan Infiks (Berisi)

Untuk melakukan pencocokan infix, di mana pola dapat muncul di mana saja dalam string, Anda dapat menempatkan simbol % di awal dan akhir pola. Misalnya, untuk menemukan semua produk yang name -nya mengandung kata "Pro".

filter = 'name LIKE "%Pro%"'

Ini akan mencocokkan semua produk yang namanya mengandung substring "Pro", seperti "Produk", "ProLine", atau "SuperPro".

Operator Aritmatika

Operator aritmatika memungkinkan Anda untuk membuat kondisi berdasarkan perhitungan yang melibatkan bidang numerik.

Operator Aritmatika yang Didukung.

  • + (Penambahan)

  • - (Pengurangan)

  • * (Perkalian)

  • / (Pembagian)

  • % (Modulus)

  • ** (Eksponensial)

Contoh 1: Menggunakan Penjumlahan (+)

Untuk menemukan entitas di mana harga total adalah jumlah dari base_price dan tax.

filter = 'total == base_price + tax'

Contoh 2: Menggunakan Pengurangan (-)

Untuk menemukan entitas di mana quantity lebih besar dari 50 dan quantity_sold kurang dari 30.

filter = 'quantity - quantity_sold > 50'

Contoh 3: Menggunakan Perkalian (*)

Untuk menemukan entitas di mana price lebih besar dari 100 dan quantity lebih besar dari 10, dikalikan.

filter = 'price * quantity > 1000'

Contoh 4: Menggunakan Pembagian (/)

Untuk mencari hasil bagi di mana total_price dibagi dengan quantity kurang dari 50.

filter = 'total_price / quantity < 50'

Contoh 5: Menggunakan Modulus (%)

Untuk menemukan entitas di mana id adalah bilangan genap (yaitu, habis dibagi 2).

filter = 'id % 2 == 0'

Contoh 6: Menggunakan Eksponensial (**)

Untuk menemukan entitas di mana price yang dipangkatkan dengan pangkat 2 lebih besar dari 1000.

filter = 'price ** 2 > 1000'

Operator Logika

Operator logika digunakan untuk menggabungkan beberapa kondisi ke dalam ekspresi filter yang lebih kompleks. Operator ini termasuk AND, OR, dan NOT.

Operator Logika yang didukung.

  • AND: Menggabungkan beberapa kondisi yang semuanya harus benar.

  • OR: Menggabungkan kondisi di mana setidaknya satu kondisi harus benar.

  • NOT: Meniadakan sebuah kondisi.

Contoh 1: Menggunakan AND untuk Menggabungkan Kondisi

Untuk menemukan semua produk di mana price lebih besar dari 100 dan stock lebih besar dari 50.

filter = 'price > 100 AND stock > 50'

Contoh 2: Menggunakan OR untuk Menggabungkan Kondisi

Untuk menemukan semua produk di mana color adalah "merah" atau "biru".

filter = 'color == "red" OR color == "blue"'

Contoh 3: Menggunakan NOT untuk Mengecualikan Kondisi

Untuk menemukan semua produk di mana color tidak berwarna "hijau".

filter = 'NOT color == "green"'

Tips Menggunakan Operator Dasar dengan Bidang JSON dan ARRAY

Meskipun operator dasar di Milvus bersifat serbaguna dan dapat diterapkan pada bidang skalar, operator ini juga dapat digunakan secara efektif dengan kunci dan indeks di bidang JSON dan ARRAY.

Sebagai contoh, jika Anda memiliki bidang product yang berisi beberapa kunci seperti price, model, dan tags, selalu rujuk kunci secara langsung.

filter = 'product["price"] > 1000'

Untuk menemukan catatan di mana suhu pertama dalam larik suhu yang direkam melebihi nilai tertentu, gunakan.

filter = 'history_temperatures[0] > 30'

Kesimpulan

Milvus menawarkan berbagai operator dasar yang memberikan fleksibilitas dalam memfilter dan menanyakan data Anda. Dengan menggabungkan operator perbandingan, rentang, aritmatika, dan logika, Anda dapat membuat ekspresi filter yang kuat untuk mempersempit hasil pencarian dan mengambil data yang Anda butuhkan secara efisien.

Coba Milvus yang Dikelola secara Gratis

Zilliz Cloud bebas masalah, didukung oleh Milvus dan 10x lebih cepat.

Mulai
Umpan balik

Apakah halaman ini bermanfaat?