无法从mongo数据库中选择几行

时间:2019-01-06 19:35:26

标签: javascript database mongodb

我想从mongo数据库中汇总一些行。图片中有这张桌子。 started table 对该数据库进行采样:

[ { _id: 5c2857dbf45028a6280078d8,
    sum: 123,
    currency: 'UAH',
    source: 'Видатки',
    description: 'Сходив по хліба',
    date: '2018-12-16' },
  { _id: 5c286449353de8149c1a0785,
    sum: 101,
    currency: 'EUR',
    source: 'Прибутки',
    date: '2018-12-17',
    description: '-' },
  { _id: 5c287d0d51dcdf61f9cda68e,
    sum: 14,
    currency: 'UAH',
    type: 'Видатки',
    description: 'Сходив по хліба 2',
    date: '2018-12-16',
    source: '-' },
  { _id: 5c287d0d51dcdf61f9cda68f,
    sum: 16,
    currency: 'EUR',
    type: 'Прибутки',
    date: '2018-12-17',
    description: 'Транспорт',
    source: 'Видатки' },
  { _id: 5c324f2a1596d0471c379fa6,
    sum: '200',
    currency: 'USD',
    source: 'Видатки',
    description: 'Ремонт',
    date: '2019-01-01' } 
]

我试图更改$ and上的$或表达式,但不起作用

db.collection('operations').aggregate([
   { 
      $match: { $or: [ { $and: [ {sum: { $gt: 100}}, {currency: {$eq: "EUR"} } ]  }, { $and: [ {sum: { $gt: 150}}, {currency: {$eq: "USD"} } ] } ] }
   }
], callback);

我希望选择的操作中,我的欧元货币总和> 100,美元总和> 150的行。但是我只有欧元总和> 100的行。 what i have after

1 个答案:

答案 0 :(得分:1)

兄弟,

您的总和是字符串

_id:5c324f2a1596d0471c379fa6,     总和:“ 200”,     货币:美元',     来源:“Видатки”,     描述:“Ремонт”,     日期:“ 2019-01-01”}