Anda dapat melakukan kueri awalan untuk mengambil data yang sesuai dengan awalan tertentu. Jika kolom yang digunakan untuk mencocokkan kondisi awalan merupakan kolom TEXT, kolom tersebut akan ditokenisasi. Suatu baris memenuhi kondisi kueri jika setidaknya satu token-nya mengandung awalan yang ditentukan.
Prasyarat
-
Instans OTSClient telah diinisialisasi. Untuk informasi selengkapnya, lihat Inisialisasi instans OTSClient.
-
Tabel data telah dibuat dan data telah ditulis ke dalam tabel. Untuk informasi selengkapnya, lihat Membuat tabel data dan Menulis data.
-
Indeks pencarian telah dibuat untuk tabel data tersebut. Untuk informasi selengkapnya, lihat Buat indeks pencarian.
Parameter
|
Parameter |
Deskripsi |
|
table_name |
Nama tabel data. |
|
index_name |
Nama indeks pencarian. |
|
offset |
Posisi awal kueri saat ini. |
|
limit |
Jumlah maksimum baris yang ingin dikembalikan oleh kueri saat ini. Untuk hanya menghitung jumlah baris yang memenuhi kondisi kueri tanpa mengambil data spesifik dari baris-baris tersebut, atur parameter ini ke 0. |
|
get_total_count |
Menentukan apakah jumlah total baris yang memenuhi kondisi kueri akan dikembalikan. Nilai default: false. Nilai false berarti jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan. Jika parameter ini diatur ke true, performa kueri akan menurun. |
|
query_type |
Jenis kueri. Untuk menggunakan kueri awalan, atur parameter ini ke |
|
field_name |
Nama kolom yang ingin Anda kueri. |
|
prefix |
Awalan. Jika kolom yang digunakan untuk mencocokkan kondisi awalan merupakan kolom TEXT, kolom tersebut akan ditokenisasi. Suatu baris memenuhi kondisi kueri jika setidaknya satu token-nya mengandung awalan yang ditentukan. |
|
sort |
Metode yang ingin Anda gunakan untuk mengurutkan baris dalam respons. Untuk informasi selengkapnya, lihat Pengurutan dan penomoran halaman. |
|
columns_to_get |
Menentukan apakah semua kolom dari setiap baris yang memenuhi kondisi kueri akan dikembalikan. Anda dapat mengonfigurasi return_type dan return_names untuk parameter ini.
|
Contoh
Kode contoh berikut menunjukkan cara mengambil semua baris yang mengandung awalan "key" pada kolom keyword dalam sebuah tabel data.
$request = array(
'table_name' => 'php_sdk_test',
'index_name' => 'php_sdk_test_search_index',
'search_query' => array(
'offset' => 0,
'limit' => 2,
'get_total_count' => true,
'query' => array(
'query_type' => QueryTypeConst::PREFIX_QUERY,
'query' => array(
'field_name' => 'keyword',
'prefix' => 'key'
)
),
'sort' => array(
array(
'field_sort' => array(
'field_name' => 'keyword',
'order' => SortOrderConst::SORT_ORDER_ASC
)
),
)
),
'columns_to_get' => array(
'return_type' => ColumnReturnTypeConst::RETURN_ALL,
'return_names' => array('keyword')
)
);
$response = $otsClient->search($request);
FAQ
Referensi
Saat menggunakan indeks pencarian untuk mengambil data, Anda dapat menggunakan metode kueri berikut: kueri tepat, kueri istilah, Pencocokan semua kueri, kueri cocok, permintaan pencocokan frasa, kueri awalan, kueri rentang, kueri wildcard, Kueri Boolean, kueri geografis, kueri bersarang, dan kueri exists. Anda dapat menggunakan berbagai metode kueri ini untuk mengambil data dari berbagai dimensi sesuai kebutuhan bisnis Anda.
Jika Anda ingin mengurutkan atau memberi nomor halaman pada baris yang memenuhi kondisi kueri, Anda dapat menggunakan fitur pengurutan dan penomoran halaman. Untuk informasi selengkapnya, lihat Pengurutan dan penomoran halaman.
Jika Anda ingin menciutkan set hasil berdasarkan kolom tertentu, Anda dapat menggunakan fitur collapse (distinct). Dengan demikian, data jenis tertentu hanya muncul sekali dalam hasil kueri. Untuk informasi selengkapnya, lihat Collapse (distinct).
Jika Anda ingin menganalisis data dalam tabel data, seperti mendapatkan nilai ekstrem, jumlah total, dan jumlah baris, Anda dapat melakukan operasi agregasi atau mengeksekusi pernyataan SQL. Untuk informasi selengkapnya, lihat Agregasi dan Kueri SQL.
Jika Anda ingin cepat mendapatkan semua baris yang memenuhi kondisi kueri tanpa perlu mengurutkannya, Anda dapat memanggil operasi ParallelScan dan ComputeSplits untuk menggunakan fitur pemindaian paralel. Untuk informasi selengkapnya, lihat Pemindaian paralel.