SQL查询' ish我希望在Pouchdb中实现的目标

时间:2017-06-20 16:47:30

标签: sql pouchdb nosql

SELECT * FROM smo_images
WHERE search_term in search_helpers (search helpers is array or keywords)
OR search_term = smo_code
OR search_term = size
OR search_term = category;

我想在PouchDB中实现类似的功能。我是nosql和PouchDB的新手。文档令人困惑,并不简单。

1 个答案:

答案 0 :(得分:1)

对我而言,the documentation非常明确和直截了当。它提到了SQL的老派方法:

  

SQL数据库中的索引

     

快速了解索引的工作方式:in   像MySQL和PostgreSQL这样的关系数据库,通常可以查询   无论你想要什么领域:

SELECT * FROM pokemon WHERE name = 'Pikachu';
     

但是如果你不想让你的表演变得糟糕,你首先要添加   索引:

ALTER TABLE pokemon ADD INDEX myIndex ON (name);
     

索引的工作是确保字段存储在B树中   在数据库中,所以你的查询运行在O(log(n))时间而不是   O(n)时间。

从那里开始与NoSQL进行比较:

  

NoSQL数据库中的索引

     

以上所有内容在CouchDB和。等文档存储中也是如此   MongoDB,但从概念上讲它有点不同。默认情况下,   假定文档是具有一个主键的无模式blob   (在Mongo和Couch中都称为_id),任何其他键都需要   单独指定。概念基本相同;它主要是   只是不同的词汇。

     

在CouchDB中,查询称为map / reduce函数。这是因为,   与大多数NoSQL数据库一样,CouchDB可以很好地扩展   多台计算机,并在中执行高效的查询操作   平行。基本上,我们的想法是将查询划分为地图   函数和reduce函数,每个函数都可以执行   并行在多节点集群中。

继续介绍Map / Reduce函数,临时/持久视图等的描述和示例代码。