Anda dapat melakukan kueri awalan untuk menanyakan data yang sesuai dengan awalan tertentu. Jika kolom yang digunakan untuk mencocokkan kondisi awalan adalah kolom TEXT, kolom tersebut akan dipecah menjadi token. Sebuah baris memenuhi kondisi kueri ketika setidaknya satu token mengandung awalan yang ditentukan.
Prasyarat
Sebuah instance OTSClient telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi instance OTSClient.
Sebuah tabel data dibuat dan data telah ditulis ke dalam tabel. Untuk informasi lebih lanjut, lihat Buat tabel data dan Tulis data.
Indeks pencarian telah dibuat untuk tabel data. Untuk informasi lebih lanjut, lihat Buat indeks pencarian.
Parameter
Parameter | Deskripsi |
table_name | Nama tabel data. |
index_name | Nama indeks pencarian. |
offset | Posisi dari mana kueri saat ini dimulai. |
limit | Jumlah maksimum baris yang ingin Anda dapatkan dari kueri saat ini. Untuk hanya menanyakan jumlah baris yang memenuhi kondisi kueri tanpa menanyakan data spesifik dari baris, atur parameter ini ke 0. |
get_total_count | Menentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default: false. Nilai false menentukan bahwa jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan. Jika parameter ini disetel ke true, performa kueri akan terpengaruh. |
query_type | Tipe kueri. Untuk menggunakan kueri awalan, atur parameter ini ke |
field_name | Nama kolom yang ingin Anda tanyakan. |
prefix | Awalan. Jika kolom yang digunakan untuk mencocokkan kondisi awalan adalah kolom TEXT, kolom tersebut akan dipecah menjadi token. Sebuah baris memenuhi kondisi kueri ketika setidaknya satu token mengandung awalan yang ditentukan. |
sort | Metode yang ingin Anda gunakan untuk mengurutkan baris dalam respons. Untuk informasi lebih lanjut, lihat Pengurutan dan paginasi. |
columns_to_get | Menentukan apakah akan mengembalikan semua kolom dari setiap baris yang memenuhi kondisi kueri. Anda dapat mengonfigurasi return_type dan return_names untuk parameter ini.
|
Contoh
Berikut ini adalah contoh kode yang menunjukkan cara menanyakan semua baris yang berisi awalan "key" di kolom kata kunci dalam 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 menanyakan data, Anda dapat menggunakan metode kueri berikut: kueri tepat, kueri terms, kueri match all, kueri match, kueri match phrase, kueri awalan, kueri rentang, kueri wildcard, kueri Boolean, kueri geo, kueri nested, dan kueri exists. Anda dapat menggunakan metode kueri yang berbeda untuk menanyakan data dari beberapa dimensi berdasarkan kebutuhan bisnis Anda.
Jika ingin mengurutkan atau membagi halaman baris yang memenuhi kondisi kueri, Anda dapat menggunakan fitur pengurutan dan paginasi. Untuk informasi lebih lanjut, lihat Pengurutan dan paginasi.
Untuk merangkum set hasil berdasarkan kolom tertentu, Anda dapat menggunakan fitur collapse (distinct). Dengan cara ini, data dari jenis yang ditentukan muncul hanya sekali dalam hasil kueri. Untuk informasi lebih lanjut, lihat Collapse (distinct).
Jika ingin menganalisis data dalam tabel data, seperti mendapatkan nilai ekstrem, jumlah, dan total jumlah baris, Anda dapat melakukan operasi agregasi atau menjalankan pernyataan SQL. Untuk informasi lebih lanjut, lihat Agregasi dan Kueri SQL.
Untuk dengan cepat mendapatkan semua baris yang memenuhi kondisi kueri tanpa perlu mengurutkan baris, Anda dapat memanggil operasi ParallelScan dan ComputeSplits untuk menggunakan fitur pemindaian paralel. Untuk informasi lebih lanjut, lihat Pemindaian paralel.