MongoDB - 有条件地检查管道中的空值
MongoDB - Conditionally check value for null in the pipeline
在我的 MongoDB 文档中,我有 updated
字符串类型的字段
在管道中,我正在使用该字段
...
{
...
"$dayOfMonth", new BsonDocument(){
{"$dateFromString", new BsonDocument(){{"dateString", "$updated"}}
}
...
}
如果我在集合文档中有值,一切似乎都是有序的,但如果管道进入没有值的文档,我会得到
Command aggregate failed: $dateFromString requires that 'dateString'
be a string, found: date with value 2022-02-23T01:54:21.467Z.
如何有条件地检查管道中此 属性 的值?
使用 $toDate
代替 $dateFromString
。
{
$dayOfMonth: {
$toDate: "$updated"
}
}
BsonDocument
{
"$dayOfMonth", new BsonDocument() {
{ "$toDate", "$updated" }
}
}
在我的 MongoDB 文档中,我有 updated
字符串类型的字段
在管道中,我正在使用该字段 ...
{
...
"$dayOfMonth", new BsonDocument(){
{"$dateFromString", new BsonDocument(){{"dateString", "$updated"}}
}
...
}
如果我在集合文档中有值,一切似乎都是有序的,但如果管道进入没有值的文档,我会得到
Command aggregate failed: $dateFromString requires that 'dateString' be a string, found: date with value 2022-02-23T01:54:21.467Z.
如何有条件地检查管道中此 属性 的值?
使用 $toDate
代替 $dateFromString
。
{
$dayOfMonth: {
$toDate: "$updated"
}
}
BsonDocument
{
"$dayOfMonth", new BsonDocument() {
{ "$toDate", "$updated" }
}
}