全部產品
Search
文件中心

Tablestore:使用GetRange介面查詢資料時返回指定範圍外的資料

更新時間:Mar 13, 2025

當使用GetRange介面查詢資料時返回指定範圍外的資料時,您可以通過建立二級索引進行資料查詢。

問題現象

在控制台範圍查詢、SDK範圍查詢、OTS外部表格查詢、OTSReader資料同步等情境中,使用GetRange介面查詢資料時,返回的結果與查詢條件中設定的範圍不一致。

可能原因

設定的查詢條件不符合最左匹配原則。例如當第一主鍵列的起始主鍵和結束主鍵分別設定為beginPrimaryKey = INF_MINendPrimaryKey = INF_MAX,第二主鍵列的起始主鍵和結束主鍵分別設定為beginPrimaryKey = 10endPrimaryKey = 10,則返回的結果為全表資料,而不是第二主鍵列等於10的行。

重要

最左匹配原則表示最左優先,只有當最左主鍵的起止範圍相同時,右側主鍵設定的起止範圍才有效;如果最左主鍵設定的起止範圍不同時,右側主鍵設定的範圍將失效。此處最左主鍵和右側主鍵指表結構中主鍵定義的先後順序。

解決方案

建立二級索引調整為所需主鍵順序後,請根據實際情境選擇合適的查詢方式。