管理员
论坛积分
分
威望 点
贡献值 个
金币 枚
|
查询表中学生年级大于20,如下: Q3 h: r( C0 x- r! H
/ V% p. l6 o' w, Fdb.getCollection('student').find({'age':{'$gt':'20'}})
0 l7 a) S5 [2 ^( b
& E% m/ _$ a: `- P2 b; [6 j
, G1 P3 ?! S, }3 q7 y% `1 _- Q( ]6 `; a& q; t# d
$lt < (less than )$ w0 c, i" l% f! P/ r* p# X
- f0 u. b/ H& P9 q
$lte <= (less than or equal to ); g( c2 t" c, @) c
9 O! `6 D3 H' v2 w$ F
$gt > (greater than )
2 }2 d1 t$ O+ X
( @/ s0 A. I7 r* v* p$ r$gte >= (greater than or equal to)+ ]; _% u& T$ u0 @9 L- Z' `
$ W i- ]+ @4 w% [5 N4 J( \( t4 l4 r
* e: J6 d' ^, \ B+ k: t1 z( Y. ^$ne != (not equal to)不等于 {'age': {'$ne': 20}}- T* u$ F! K* H* L2 q6 ^
% a5 w- T) {7 X8 w
$in 在范围内 {'age': {'$in': [20, 23]}} 注意用list
! r! Z/ e" C5 T- ^* H& T% H# [0 S+ W. M- G
$nin (not in) 不在范围内{'age': {'$nin': [20, 23]}} 注意用list! `. K$ R$ z0 W+ j: e* f- W, ~
" ?1 W( c8 C; ?4 k$regex (正则匹配) db.collection.find({'name': {'$regex': '^M.*'}}) 匹配以M开头的名字: J# o. q) c9 V! I7 z+ O
: Y+ F: Q2 G8 @8 ~
$exists 属性是否存在 {'name': {'$exists': True}} 查找name属性存在1 l7 U- f5 F- Z5 d8 I
. ^; p1 d) r4 A, p* G# d% [4 ?
$type 类型判断 {'age': {'$type': 'int'}} age的类型为int
5 Z& t$ m ~- T5 K# B
3 Z7 H4 G" X' ~: G7 I0 `$text 文本查询 {'$text': {'$search': 'Mike'}} text类型的属性中包含Mike字符串
& L- ~% e( b* s: {, p0 M1 J: H j' J
$or 查找多种条件 ({'$or':[{'name':'chen'},{'name':'wang'}]})! b) C: W1 @. U+ g0 f" @: c" w- k
$where 查询两个键的值是否相等 db.test.find({"$where": "this.fields1 == this.fields2"}).limit(10);5 m0 ?& A+ R; y9 a
. D1 o2 A1 ~ b/ G
$exists 键是否存在 {finaGoalLine:{'$exists':true}}" A* L; E: y. p* b' K; p7 t+ J
. H5 h- E- Y% p$all 如果您希望找到一个包含这两个元素的数组 [ 'tags' => [ '$all' => [ 'red' , 'blank' ]]]
9 K1 _, K, R, A/ g/ m4 @3 Y; m
$elemMatch 运算符在数组的元素上指定多个条件 'dim_cm' => ['$elemMatch' => [ '$gt' => 22,'$lt' => 30,],],
: J1 {" [- w8 \$ _3 k6 Q# c$size 运算符按元素数查询数组 [ 'tags' => [ '$size' => 3 ' P4 A9 U, U) O- U: V {) h
3 ^, {, c" ^: S1 j/ z5 _
, U9 k1 W% W7 U* E2 j
8 z8 `, S: ?2 ]' Q
! V$ Z) c- z/ e+ b2 f! U! y- l d. N, S+ p
. g b2 a2 n8 O( m: e
) W2 |& D3 s% G7 b
# g" T( O$ X' e+ K! I( `组合使用方法如下:0 c) C, _& R4 X, d; t4 T$ Z/ X
4 d& t/ J+ F: Q/ ?' P
db.user.find({"age":{"$gte":18,"$lte":25}}), ]: m; K( {6 I- _4 a: Y( Y1 j
" k2 u. q* P, Z
- [! e" g, _' f( ]5 g) ]
0 c8 H% k4 Z S. C3 p8 e: v对于日期的条件查询方法:$ c# g0 d; r, R3 P
`( A5 z: l& ~. @' ?" h
db.getCollection('news').find({'pub_date':{'$gte':'2017-07-11 11:0:0'}})- p5 H; ~# B4 f' O
8 h6 W- x0 X$ U, T4 [# W% q- x6 D7 j4 M! E/ B4 Q* J( r! P: d
1 t" \: E0 t, x8 a2) 不等于 $ne! V) U2 b6 c' R) K: a' F3 [! p F
: r% ]1 g8 E/ `例子:5 r1 C/ a6 ~# x! ` @
F5 L# _: R* xdb.taobao.find( { age: { $ne : 10} } );
4 s2 }, `+ |& Z: D: ~- A; tphp7 查询mongodb方法大全
+ k$ k+ ?/ A* [3 M1 }5 X7 _9 S8 `5 Y, Y& F- D* e; J
k$ S1 `0 V/ y& p" e8 I. y7 r
; X5 [& S/ G i- D
' A5 ~5 C$ U: H( `" B. Z
8 k" R3 l0 {# C0 z0 {4 @) K6 y( k( ?
6 o' {* n5 [# i3 ]0 K- E8 |0 g) d! `. `8 f7 h# N
3 U: I4 a- o9 |6 ]
, e# L& {. |& o" F' W$ J4 F- F8 Z, }9 D" W3 {/ C% }* H
) }' f1 ^$ Z6 T: j" x! M: e# O& F& L* a2 V4 i/ y- o
|
|