我有一个模拟的indexedDB包含如下项目:
{
id:1002,
name:"Frank",
company: "dg",
age:30
}
我已经创建了索引 [' name',' age'' company'] ,只是想要得到我需要的结果就像websql一样。
为获取项目而定义了 getMultipleDataByRange 功能 ,我将['0',24,'ef']
设置为lowerBound
和['z',24,'ef']
作为upperBound
,我认为它应该显示结果与24岁以上的项目相匹配,其公司是" ef"。但结果显示所有项目都符合我设定的范围。如何设置范围以获得正确的结果。
代码也可以通过我生成的JSBIN链接来检查:
答案 0 :(得分:3)
如果您更改索引的顺序以使变化的部分(名称)在最后,它将起作用。如果您想知道原因,请参阅In IndexedDB, is there a way to make a sorted compound query?,了解复合索引在IndexedDB中的工作原理。