在MongoDB中查找非空字符串的第一个实例

时间:2016-09-07 22:47:17

标签: javascript mongodb

mongoDB新手。我正在查询数组,我想找到imageUrl值不是空字符串的第一个实例。目前我有这个:

gallery.imageUrl = gallery.Galleryslides [0] .imageUrl;

但这只是拉出imageUrl的第一个实例,无论它是否为空字符串。

2 个答案:

答案 0 :(得分:0)

猜测您的架构是这样的

df_list <- mget(ls(pattern="*df"))
New_df <- do.call(rbind.fill, df_list)

下面的此查询将找到与图库_id匹配的所有图库以及所有具有imageUrl的gallerySlides

var gallery = {
    _id: "something",
    gallerySlides: [{
        imageUrl: "someUrl"
    }]
}

答案 1 :(得分:0)

1)我想你想在某些条件下获得画廊清单 2)迭代这些图库文档并添加幻灯片的第一张imageUrl作为图库的封面。

我希望这个例子会有所帮助:

const _ = require('lodash'); // don't forget install it: npm i --save lodash

var cursor = db
               .collection('gallery')
               .find({
                 gallerySlides: {$exists: true, $gt: {$size: 0}}
               });

var galleries = [];
cursor.each(function(gallery) {
  gallery.imageUrl = _.find(gallery.Galleryslides, 
                            function(slide) {return slide.imageUrl != ''});
  galleries.push(gallery);
});