您尚未登录,请登录后浏览更多内容! 登录 | 立即注册

QQ登录

只需一步,快速开始

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 10934|回复: 2
打印 上一主题 下一主题

[php学习资料] mongodb中比较级查询条件:($lt $lte $gt $gte)(大于、小于...

[复制链接]
跳转到指定楼层
楼主
发表于 2019-5-10 15:00:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
查询表中学生年级大于20,如下:2 ?* K; |) n: p  p& R6 T  n
2 |! X& j: B: x6 V) z. m- }
db.getCollection('student').find({'age':{'$gt':'20'}})$ G" |8 O! M6 G8 B* S# h6 t

9 P: p! e. R; o  I
( P! q% d, q# T/ W% K6 z- X
9 W' }1 V; F/ ~' G" _: O- V4 Z$lt    <   (less  than )
. w" ~2 Y6 ?1 D7 d+ @* ]8 ]  Q
4 e# L/ {( {5 V2 W; z) K$lte    <=  (less than  or equal to )
& Z1 @  E. C2 j+ [% B+ `' J
* N9 H! z# t( z8 P) V6 m, B1 z$gt   >    (greater  than )
: }8 G8 I, h) U4 E- _* {& g- _- [4 H
/ Q0 a, J' P( q: w- M. z5 H$ z$gte   >=    (greater  than or   equal to)
4 K: H1 {9 z# l; N6 L! Y; u: ?. M2 w+ R% [( _" s* O# A
游客,如果您要查看本帖隐藏内容请回复
/ B4 }4 r- i" L, r8 F# |0 C

! E! j& ~7 P* j$ne  != (not equal to)不等于  {'age': {'$ne': 20}}4 q% a! k+ w; p9 ], r4 o! [
" E4 y2 a) l1 a% x2 E+ v# \
$in  在范围内  {'age': {'$in': [20, 23]}}   注意用list
$ g4 h3 d% }- t% J! p9 z* p+ g
$ i4 d: ^9 @* v( _8 p0 p$ N; i$nin  (not in)  不在范围内{'age': {'$nin': [20, 23]}} 注意用list5 }, A  b9 L( S3 A( U

$ L, \! P1 n8 Q( u- m$regex (正则匹配) db.collection.find({'name': {'$regex': '^M.*'}})  匹配以M开头的名字- E( y! j2 V$ Z( ^( d  u

/ S- Z& B, ~& N7 |; q$exists      属性是否存在       {'name': {'$exists': True}}     查找name属性存在5 j& E$ g  O4 ^. \/ i, L

( X2 p# h* z; C+ \& ?3 n9 d$type     类型判断        {'age': {'$type': 'int'}}       age的类型为int
+ t" D1 a3 u; Q  A( H) N# v" g3 F1 a# Z0 m0 E8 o$ `, k
$text      文本查询      {'$text': {'$search': 'Mike'}}     text类型的属性中包含Mike字符串
4 F) v( I2 K6 J$ [! w, G/ M: x# E8 b" P: u, _3 Z& G4 C2 R7 w
$or  查找多种条件   ({'$or':[{'name':'chen'},{'name':'wang'}]})
: _4 K, m" ?, \( _) V$where 查询两个键的值是否相等 db.test.find({"$where": "this.fields1 == this.fields2"}).limit(10);
2 H* v8 I( `# ~' z! g' e/ {5 G  T0 S  v- p0 z0 }$ l2 D1 z. D: M
$exists 键是否存在   {finaGoalLine:{'$exists':true}}
4 X3 V7 f* N9 p% E, c0 q0 q- y/ s2 Z6 q' B
$all  如果您希望找到一个包含这两个元素的数组     [ 'tags' => [ '$all' => [ 'red' 'blank' ]]]
( G: a0 l7 m! O" S& z' j/ ~/ j6 x) n: v; U
$elemMatch   运算符在数组的元素上指定多个条件    'dim_cm'  => ['$elemMatch'  =>  [ '$gt'  =>  22,'$lt'  =>  30,],],& z! w1 y7 O  ~5 X$ U
$size 运算符按元素数查询数组   [ 'tags' => [ '$size' => 3 0 p5 Y0 w0 \6 z  O; s. |5 e$ T

( B/ v1 E  T; e1 a- i

2 T2 _' g1 ~# q" m- g& k
4 G  f$ m5 X1 }

5 h: \8 ^) L6 d2 r7 N) q8 m* @. e) l
7 V/ O9 }/ E! p2 R) U& x; e. m  L
+ C) ]+ ?; t+ k; t& e' G2 b
5 j/ v/ g/ y. n
组合使用方法如下:7 n. b$ C/ R9 w( _0 O% L( L3 y

0 I4 z2 i0 [. ]6 \0 L$ Kdb.user.find({"age":{"$gte":18,"$lte":25}})2 {! w& x6 c9 J! |7 ~& i

. M8 m# ]! ~) O. E2 W
( M6 M0 R: a5 I+ \3 I% G3 l0 K! ^: J: k! J* Y& c  T
对于日期的条件查询方法:
7 J: {5 E1 C! F4 c5 {  ~3 b. H' K. _8 o9 i% i/ [- u
db.getCollection('news').find({'pub_date':{'$gte':'2017-07-11  11:0:0'}})
4 Y; m; K. J+ E: L) t2 j% j1 j4 T/ w. J% v$ z8 H

* h4 v' ^5 _0 ?6 D0 `% q) |8 L& ~$ W& b# ?" c8 U# g# k
2) 不等于 $ne' C) N# U0 v8 x9 [

7 j+ ]3 [& d' D1 E# Y$ j2 {例子:* U  W- l7 M2 \! k! P( b

% ~! b" D# ?' n: ]/ }0 Bdb.taobao.find( { age: { $ne : 10} } );  ~; Q4 S3 i0 t! E
php7 查询mongodb方法大全
/ N) y" t* E! o7 K8 i! _6 y
游客,如果您要查看本帖隐藏内容请回复

0 I- I; }6 ^; w' `4 A3 z8 E' {0 W1 A: X; G% e2 W
7 i  k5 v+ N- }

: t; [# M; T3 F5 F' y7 r+ S8 r/ I4 e: I, }: c- R( q6 O# \

1 Z, m' |2 |0 c! ^; N- o+ ]4 d0 x. B; R% G7 y3 U1 l

: d) h6 m4 }& V9 {# T1 Z, ~% B2 C3 y1 q) H
5 |  ?5 ^& z/ N& ?& F9 n

. Z  s0 j3 w8 P! S2 w+ [/ C
$ W+ [. h; E7 W: }9 \! Y, S. H
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 支持支持 反对反对
沙发
 楼主| 发表于 2019-5-15 11:52:22 | 只看该作者
查询中的 and or
' t4 ?2 S. o/ e
  1. //and
    - q: R9 \: Q9 R: ~& {) o- x( l8 J
  2. {key1:value1, key2:value2}
    , ]% ]9 J& |6 K( f  a8 j. b+ |
  3. [key1=>value1, key2=>value2]1 j$ e: d. }/ m( [0 A0 K1 W$ q
  4. //or
复制代码

& X0 P, s: U, z5 `+ @
: D% A/ b6 u9 I; _- a
回复 支持 反对

使用道具 举报

板凳
 楼主| 发表于 2019-5-16 15:39:54 | 只看该作者
'sort' => ['id'=> -1] //排序-1是降序  1为升序
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

GMT+8, 2024-7-3 20:42 , Processed in 0.113458 second(s), 18 queries .

Copyright © 2001-2024 Powered by cncml! X3.2. Theme By cncml!