find
{
"name":"zhangsan",
"age":23
}
db.users.find();全查询
db.users.find({"name":"zhangsan"});
查询name 为zhangsan的数据,相当于where name = 'zhangsan'
db.users.find({"name":"zhangsan","age":23});
相当于 where name = 'zhangsan' and age = 23;
指定返回的键
db.users.find({},{"name":1,"age":1,"_id":0})
1显示,0不显示
查询条件
$lt,$lte,$gt,$gte 比较操作符,对应<,<=,>,>=。
db.users.find({"age":{"$gte":18,"$lte":30}})
查询age 大于等于18 小于等于30的。
不等于 $ne
db.users.find({"username":{"$ne":"joe"}});
查询名称不为joe的数据
or 查询
db.users.find({"age":{"$in":[23,34,33]}});
查询年龄为23或者34或者33的数据。
$in 只能做单键的or查询,多键的or查询用$or
db.users.find({"$or":[{"age":30},{"name":"lisi"}]});
在复杂
db.users.find({"$or":[{"age":{"$in":[23,343]}},{"name":"li"}]});
查找null
有键存在
db.users.find({"b":null});
没有键存在,返回所以不包含键的数据
解决没键问题
db.users.find({"b":{"$in":[null],"$exists":true}});
{
"name":"zhangsan",
"age":23
}
db.users.find();全查询
db.users.find({"name":"zhangsan"});
查询name 为zhangsan的数据,相当于where name = 'zhangsan'
db.users.find({"name":"zhangsan","age":23});
相当于 where name = 'zhangsan' and age = 23;
指定返回的键
db.users.find({},{"name":1,"age":1,"_id":0})
1显示,0不显示
查询条件
$lt,$lte,$gt,$gte 比较操作符,对应<,<=,>,>=。
db.users.find({"age":{"$gte":18,"$lte":30}})
查询age 大于等于18 小于等于30的。
不等于 $ne
db.users.find({"username":{"$ne":"joe"}});
查询名称不为joe的数据
or 查询
db.users.find({"age":{"$in":[23,34,33]}});
查询年龄为23或者34或者33的数据。
$in 只能做单键的or查询,多键的or查询用$or
db.users.find({"$or":[{"age":30},{"name":"lisi"}]});
在复杂
db.users.find({"$or":[{"age":{"$in":[23,343]}},{"name":"li"}]});
查找null
有键存在
db.users.find({"b":null});
没有键存在,返回所以不包含键的数据
解决没键问题
db.users.find({"b":{"$in":[null],"$exists":true}});