javascript - LokiJS: Simple find query returns wrong result - Stack Overflow

In LokiJS I try a very simple query (which I assume is AND):var dbRes = recsCol.find({'format'

In LokiJS I try a very simple query (which I assume is AND):

var dbRes = recsCol.find({'format':format, 'cardId':-1});

after inserting some data with

recsCol.insert({format:format, cardId:id, recCardId:key, amount:item[key]});

that doesn't contain a cardId of -1.

The query still yields results. Is this expected behaviour? If so, how can I make the fields match exactly so that I won't get a result in this case?

In LokiJS I try a very simple query (which I assume is AND):

var dbRes = recsCol.find({'format':format, 'cardId':-1});

after inserting some data with

recsCol.insert({format:format, cardId:id, recCardId:key, amount:item[key]});

that doesn't contain a cardId of -1.

The query still yields results. Is this expected behaviour? If so, how can I make the fields match exactly so that I won't get a result in this case?

Share Improve this question edited Sep 22, 2017 at 18:01 CommunityBot 11 silver badge asked Aug 15, 2015 at 11:51 WonkoWonko 1761 silver badge9 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 6

You can do an AND in LokiJS, no problem:

var dbRes = recsCol.find({'$and': [{'format':format}, {'cardId':-1}]});

I remend using find for one-off queries. If the query occurs multiple times on resultsets that may change then definitely use a view.

By default, all fields in a query object are treated as an OR. To make it an AND you will need to change your query syntax to the following:

recsCol.find({
    $and: [
        {'format':format},
        {'cardId':-1}
    ]
});

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745246736a4618443.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信