我有一个表storedgames
,其中包含 2092 个项目。
它还在该表上有一个索引,其中还列出了 2092 个项目。
当我获取数据时,我使用索引来获取一个特定用户的项目。
const params = {
TableName: "storedgames",
IndexName: "user-index",
KeyConditionExpression: "#usr = :usr",
ExpressionAttributeNames: { "#usr": "user" },
ExpressionAttributeValues: { ":usr": user }
};
const data = await new Promise((resolve, reject) => {
docClient.query(params, (err, data) => {
if (err) { reject(err); } else { resolve(data); }
});
}).catch((err) => {
console.error(err);
return false;
});
但是,上面的代码不会返回所有项目。它只找到 42 个。对于今天的项目,只有 1 个命中。当我直接在 AWS 网页上查看时,我实际上找到了更多今天的项目。
即使我使用索引执行此操作,它也会找到更多记录。
当我忽略一天的过滤时,我实际上找到了 130 多个项目,而当我忽略一天过滤器时,我的 javascript 代码仅返回 42 个项目。
所以我的问题是,当我以编程方式调用它时,为什么我的索引数据似乎不完整?