全部产品
Search
文档中心

Tablestore:Kueri frasa cocok

更新时间:Jul 06, 2025

Kueri frasa cocok serupa dengan kueri cocok, tetapi kueri frasa cocok mengevaluasi posisi token. Sebuah baris memenuhi kondisi kueri hanya jika urutan dan posisi token dalam baris tersebut sesuai dengan urutan dan posisi token pada kata kunci. Jika metode tokenisasi untuk bidang yang akan dikueri menggunakan tokenisasi fuzzy, kueri frasa cocok memiliki latensi lebih rendah dibandingkan dengan kueri wildcard.

Prasyarat

Parameter

Parameter

Deskripsi

tableName

Nama tabel data.

indexName

Nama indeks pencarian.

offset

Posisi dari mana kueri dimulai.

limit

Jumlah maksimum baris yang ingin Anda dapatkan dari kueri.

Untuk hanya mengkueri jumlah baris yang memenuhi kondisi kueri tanpa mengkueri data spesifik dari baris, atur parameter limit ke 0.

queryType

Tipe kueri. Untuk menggunakan kueri frasa cocok, atur parameter ini ke TableStore.QueryType.MATCH_PHRASE_QUERY.

fieldName

Nama bidang yang ingin Anda cocokkan.

Kueri frasa cocok berlaku untuk bidang TEXT.

text

Kata kunci yang digunakan untuk mencocokkan nilai bidang saat Anda melakukan kueri frasa cocok.

Jika bidang yang ingin Anda cocokkan adalah bidang TEXT, kata kunci akan di-tokenisasi menjadi beberapa token berdasarkan tipe analisis yang Anda tentukan saat membuat indeks pencarian. Secara default, tokenisasi satu kata dilakukan jika Anda tidak menentukan tipe analisis saat membuat indeks pencarian. Untuk informasi lebih lanjut, lihat Tokenisasi.

Sebagai contoh, kueri frasa cocok berdasarkan frase "this is" cocok dengan "..., this is tablestore" dan "this is a table" dan tidak cocok dengan nilai "this table is ..." atau "is this a table".

getTotalCount

Menentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default: false.

Jika parameter ini disetel ke true, performa kueri akan terpengaruh.

columnToGet

Menentukan apakah akan mengembalikan semua kolom dari setiap baris yang memenuhi kondisi kueri. Anda dapat mengonfigurasi returnType dan returnNames untuk parameter ini.

  • Jika Anda menyetel returnType ke TableStore.ColumnReturnType.RETURN_SPECIFIED, Anda perlu mengonfigurasi returnNames untuk menentukan kolom yang ingin Anda kembalikan.

  • Jika Anda menyetel parameter returnType ke TableStore.ColumnReturnType.RETURN_ALL, semua kolom dikembalikan.

  • Jika Anda menyetel parameter returnType ke TableStore.ColumnReturnType.RETURN_ALL_FROM_INDEX, semua kolom dalam indeks pencarian dikembalikan. .

  • Jika Anda menyetel parameter returnType ke TableStore.ColumnReturnType.RETURN_NONE, hanya kolom kunci utama yang dikembalikan.

Contoh

Berikut adalah kode sampel yang menunjukkan cara melakukan kueri fase cocok untuk menemukan baris dengan nilai Col_Text yang sesuai dengan fase "hangzhou shanghai":

/**
 * Cari tabel untuk baris di mana nilai Col_Text cocok dengan seluruh fase "hangzhou shanghai" secara berurutan. 
 * Tablestore mengembalikan jumlah baris yang cocok dengan frase dan sebagian dari baris yang cocok dalam kueri ini. 
 */
client.search({
    tableName: TABLE_NAME,
    indexName: INDEX_NAME,
    searchQuery: {
        offset: 0,
        limit: 10, // Untuk hanya mengkueri jumlah baris yang memenuhi kondisi kueri tanpa mengembalikan data spesifik, atur parameter limit ke 0. 
        query: {// Atur tipe kueri ke TableStore.QueryType.MATCH_PHRASE_QUERY. 
            queryType: TableStore.QueryType.MATCH_PHRASE_QUERY,
            query: {
                fieldName: "Col_Text", // Tentukan kolom yang ingin Anda cocokkan. 
                text: "hangzhou shanghai" // Tentukan frase yang ingin Anda cocokkan. 
            }
        },
        getTotalCount: true // Tentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default: false. 
    },
    columnToGet: { // Tentukan kolom yang ingin Anda kembalikan. Anda dapat menyetel parameter ini ke RETURN_SPECIFIED untuk mengembalikan kolom tertentu, RETURN_ALL untuk mengembalikan semua kolom, RETURN_ALL_FROM_INDEX untuk mengembalikan semua kolom dalam indeks pencarian, atau RETURN_NONE untuk mengembalikan hanya kolom kunci utama. 
        returnType: TableStore.ColumnReturnType.RETURN_ALL
    }
}, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }
    console.log('success:', JSON.stringify(data, null, 2));
});

FAQ

Referensi

Referensi

  • Indeks pencarian mendukung tipe kueri berikut: kueri tepat, kueri terms, kueri cocok semua, kueri cocok, kueri frasa cocok, kueri awalan, kueri rentang, kueri wildcard, kueri Boolean, kueri geo, kueri bersarang, kueri vektor, dan kueri exists. Pilih tipe kueri yang sesuai untuk mengkueri data berdasarkan kebutuhan bisnis Anda.

    Jika Anda ingin mengurutkan atau membagi halaman baris yang memenuhi kondisi kueri, gunakan fitur pengurutan dan paging. Untuk informasi lebih lanjut, lihat Pengurutan dan paging.

    Untuk menggabungkan set hasil berdasarkan kolom tertentu, Anda dapat menggunakan fitur collapse (distinct). Dengan fitur ini, data dari tipe yang ditentukan akan muncul hanya sekali dalam hasil kueri. Untuk informasi lebih lanjut, lihat Collapse (distinct).

  • Untuk menganalisis data dalam tabel, seperti mendapatkan nilai ekstrem, jumlah total, dan total baris, Anda dapat melakukan operasi agregasi atau menjalankan pernyataan SQL. Untuk informasi lebih lanjut, lihat Agregasi dan Kueri SQL.

  • Jika Anda ingin segera mendapatkan semua baris yang memenuhi kondisi kueri tanpa perlu mengurutkan baris, Anda dapat menggunakan operasi ParallelScan dan ComputeSplits untuk memanfaatkan fitur pemindaian paralel. Untuk informasi lebih lanjut, lihat Pemindaian paralel.