mongodb 元素 操作符

元素 操作符

$exists 匹配具有指定字段的文档

// mongodb 数据
[
  {price: 1, name: 'xx 1', message: 'message 1'},
  {price: 2, name: 'xx 2', message: null},
  {name: 'xx 3', message: 'message 3'},
  {price: 4, name: 'xx 4', message: null},
  {name: 'xx 5', message: null},
]

col.find(
  {
    price: {
      $exists: true
    }
  }
)
/* $exists: ture  匹配包含字段`price`的文档,包括字段值为null的文档
[
  {price: 1, name: 'xx 1', message: 'message 1'},
  {price: 2, name: 'xx 2', message: null},
  {price: 4, name: 'xx 4', message: null},
]
*/
col.find(
  {
    price: {
      $exists: false
    }
  }
)
/* $exists: false 返回不包含对应字段`price`的文档
[
  {name: 'xx 3', message: 'message 3'},
  {name: 'xx 5', message: null},
]
*/

$type 匹配具有指定字段类型的文档

col.find({title : {$type : 2}})
// 或 两种写法都可以
col.find({title : {$type : 'string'}})
// 返回 字段title 类型为字符串的数据

MongoDB 中可以使用的类型 这块只说几个常用的,想看详细类型可移步至菜鸟驿站$type类型描述

类型 数字
Double 1
String 2
Object 3
Array 4
Symbol 14
Boolean 8
Date 9
Null 10
原文地址:https://www.cnblogs.com/wangyong1997/p/13684121.html