我想从WebSql更改到Indexeddb。但是,如何执行像SQL查询这样的操作?
SELECT * FROM customers WHERE ssn = '444-44-4444' and emal = 'bill@bill@company.com'
SELECT * FROM customers WHERE ssn = '444-44-4444' and emal = 'bill@bill@company.com' and age = 30
SELECT * FROM customers WHERE ssn = '444-44-4444' and emal = 'bill@bill@company.com' and name = 'Bill'
etc
使用 IndexedDB? 例如,我在阅读 IndexedDB 的 文档 时注意到,所有的示例都只查询一个索引。因此,您可以执行以下操作:
var index = objectStore.index("ssn");
index.get("444-44-4444").onsuccess = function(event) {
alert("Name is " + event.target.result.name);
};
但是我需要同时查询多个索引!
我还发现一些有趣的帖子关于复合索引,但它们只在您查询复合索引中所有字段时才起作用。