管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
查询表中学生年级大于20,如下:' F- U: r' G. p- R
k: y2 @1 ^- w) x/ S8 O( ?db.getCollection('student').find({'age':{'$gt':'20'}})
4 X7 e, E1 s& ?1 B) f9 r/ M5 H( m) P1 b- V7 X+ n" Y, d
7 N) h3 ?" ^8 C/ `' _) ~
. G* |1 q6 q0 H8 J$lt < (less than )- f1 G) H# W# p+ {
( K! |7 s' T# E' p$ X$lte <= (less than or equal to )
$ F- m& b& w/ B# {( O Z4 k0 q5 n4 _/ e3 X$ |5 W: f* I0 X
$gt > (greater than )
( @/ `* c/ X( j# F9 {# F0 U) m+ |& |* \: x
$gte >= (greater than or equal to)
5 [ G- g! J) ?- ]2 P2 ]* \, C* A; f* J& [+ k5 |. _
. y9 u. N$ ?& C, U
" F2 n: M8 ^( g, C$ne != (not equal to)不等于 {'age': {'$ne': 20}}( N: J0 I7 D0 Q3 f# l* h* T0 K
' g' C D* G; d$ Q+ S) W+ A% @
$in 在范围内 {'age': {'$in': [20, 23]}} 注意用list
3 f! K5 ~4 H/ Y% M1 w4 z3 h* m; a0 n0 w5 U' q
$nin (not in) 不在范围内{'age': {'$nin': [20, 23]}} 注意用list8 @3 f& q' ~ [) ]/ P) `
9 S. {' i+ H- x9 d# D3 O
$regex (正则匹配) db.collection.find({'name': {'$regex': '^M.*'}}) 匹配以M开头的名字' X( g4 h/ C' M
1 x. S% }$ P$ b. q$ K. {$exists 属性是否存在 {'name': {'$exists': True}} 查找name属性存在
; v+ X, E, G8 b/ a* S1 _
+ z) F! I& m! z: z$type 类型判断 {'age': {'$type': 'int'}} age的类型为int
) X2 C! L. B5 L D& B* c9 e5 V: P
/ G- I2 c5 Y0 }/ A( n+ L$text 文本查询 {'$text': {'$search': 'Mike'}} text类型的属性中包含Mike字符串7 v8 ]$ T$ i4 Q/ Y
# I) @2 v$ Z- @6 i0 I% y
$or 查找多种条件 ({'$or':[{'name':'chen'},{'name':'wang'}]})" n+ z( o- L1 i b2 [5 ?
$where 查询两个键的值是否相等 db.test.find({"$where": "this.fields1 == this.fields2"}).limit(10);
/ O' d6 c6 D+ h+ [1 Q- G
0 z, D! O4 G3 T: E$exists 键是否存在 {finaGoalLine:{'$exists':true}}
2 e- c( _" z; C' p* R% W. K( \
, S4 s ~! `6 X' ~ I. j3 w9 q$all 如果您希望找到一个包含这两个元素的数组 [ 'tags' => [ '$all' => [ 'red' , 'blank' ]]]
8 p9 ?+ w! x2 s; |
( l6 j) a+ q* y, z* C: M: c$elemMatch 运算符在数组的元素上指定多个条件 'dim_cm' => ['$elemMatch' => [ '$gt' => 22,'$lt' => 30,],],
. e! V/ l% q; n$size 运算符按元素数查询数组 [ 'tags' => [ '$size' => 3 5 F; C) v2 `4 W% P2 e
( w% j1 S' r1 q: y, S
2 @1 i! f8 U) q% w# }) R& {/ a3 ]5 M" ]! C( `0 `" E# ]2 }
: \$ z/ @/ T$ I e: a$ R2 B
: Z) ^5 F7 j6 }' ]
: V. ^ G$ p7 L. F9 ~8 e, j' @6 n1 E/ Y& R* _- h
$ {! b$ i" ^; y7 P& D. O. ?
组合使用方法如下:5 H% v& S- a5 x
2 d: j6 B# W! z( i) ?9 \db.user.find({"age":{"$gte":18,"$lte":25}}), T7 _( m& F& P# {) v
* P7 L# ^& R) [" e
1 Z6 P$ u. Y; v9 ~0 e
$ `5 V7 t: g. d
对于日期的条件查询方法:
! {6 a3 t% E. w
% O2 y% K7 V ^6 W. Zdb.getCollection('news').find({'pub_date':{'$gte':'2017-07-11 11:0:0'}})
7 u. J) D- {) s0 T4 ~% L+ J. b/ d
# d+ A# Y4 u+ n& o/ Q6 V6 F# y' c& a8 X1 F
N8 r. g! `/ Q# I" B2) 不等于 $ne
3 M) p8 `" {2 D! |$ } b& G' E! k
7 x5 e" c* G$ K* z例子:' w* d" \* A8 R% a, |# k
2 a( @3 F/ f: T: K+ o8 F
db.taobao.find( { age: { $ne : 10} } );7 K- ^1 d5 `/ Y$ p2 U( M
php7 查询mongodb方法大全. @& z' ^4 [3 A% c; C
! E B2 R/ e" B* T3 y; J
o1 O5 E0 ^& j: Y% W$ u
+ z/ x# q6 O& C5 u
" ]$ Q6 w. E( O k7 ~
' s4 U/ n# o# E, K5 G
* m: V) z1 B6 a4 w% U* F/ r: Z+ q2 f* l6 u6 a% |
8 W/ l7 m% N5 ?9 l( d# t- m: F
1 X5 W. x, l1 v# m9 q/ B
2 }8 A* P' Y" g* s% ~/ c: Q. f3 |# e4 P# j2 |) w$ q# i
) F: u' w( E$ E: ~# \% G# R2 p3 X |
|