[英]How to find the min value of a specific field in MongoDB using C# driver 2.10.4
[英]Query mongodb database to find all value for a specific field c#
我想查询mongodb数据库以使用c#在两个日期之间的特定字段下查找所有值。 您可以帮助查询集合中的特定字段吗?
这是我的收藏“ Devise”,我尝试查询“ high”的所有值
public class Devise
{
public string parité { get; set; }
public float low { get; set; }
public float high { get; set; }
public DateTime date_observation { get; set; }
}
这是我的查询代码
public class Devisedata
{
private IMongoDatabase _database;
public async System.Threading.Tasks.Task<List<Devise>> GetDataDevise(DateTime inputDate1, DateTime inputDate2)
{
var collection = _database.GetCollection<Devise>("datafinance");
var builder = Builders<Devise>.Filter;
var filter = builder.Gte("date_observation", inputDate1) &
builder.Lt("date_observation", inputDate2.AddDays(1));
var list = await collection.Find(filter).ToListAsync();
return list;
}
}
我假设通过“查找所有值”来表示字段high
所有不同值。 如果是这样,您可以按照以下示例进行操作:
var builder = Builders<Devise>.Filter;
var filter = builder.Gte("date_observation", inputDate1) &
builder.Lt("date_observation", inputDate2.AddDays(1));
var cursor = await collection.DistinctAsync<double>("high", match);
await cursor.ForEachAsync(doc => Console.WriteLine(doc));
有关更多信息,请参见MongoCollection.Distinct和db.collection.distinct() 。
上面的代码段已在C#驱动程序 v2.2.3和MongoDB v3.2中进行了测试
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.