|
查询操作
4 X8 u0 w2 F n! M- ~- $filter["season_id"] = 106;
& J2 \) a- x4 z- Z) u, T - //$filter["array.8"] = 'cml123';2 a, L; v+ A' n5 V' U' d, ?
- 4 x& W9 _) ]- u2 y
- $filter = ["matches.events_id"=>1];
2 \9 |& B! w$ J
, M* g7 |% l/ Q* E+ x! M- $filter = ["matches.events_id"=>['$in'=>[2,3,4,5,7]]];
2 ^1 m- u; g9 b7 J* `8 O( k - $filter = ["matches.events_id"=>['$lt'=>'8'];' M6 t# a/ A, c: V- O
7 t- n; s( J. | U4 U9 T% ]
% [+ E' ^' ]# h/ b n/ l& }- ?- 以上条件说明 http://bbs.cncml.com/forum.php?m ... &extra=page%3D1: x& F! w/ l- f* z9 d" J: \
: Y. ?8 _* H3 n J1 ?- $options = [8 {- R3 ]/ g0 A* B k
- 'projection' => ['_id' => 0,"s_lastid" => 1],* s6 L, Z' F' O! U0 A- {
- 'limit' => 1, //显示条数
+ n' A" R4 ~% v% m' L7 B+ H* t - 'skip' => 1 //跳过几条) n& J: v1 ]& e& `5 l
- ];
5 i5 m- k/ f# H E- k$ ~8 U8 h9 L
7 P, l; _: _ m& K3 m- $querys = new MongoDB\Driver\Query($filter,$options);
, Y& h: S4 d _3 \% f4 d9 e - $cursors = $manager->executeQuery('football.football_Competition_season_matches', $querys);
4 h! ]3 p9 Y; S+ H - $schedule= mg_querys($cursors);- R9 S. W& a! m& W
- print_r($schedule);5 ~: |+ {7 x0 ?
复制代码 . \) {- P8 I4 c- c$ U# q, a/ X# m
. |- G* }7 C- Z' z) ^* c' M! n
# b: W! n8 {% S) J
6 p) i: _ _( ]/ i8 J/ _------------------------------------------------------------------------------------- 一、更新前通过控制台查看数据,查看命令如下 db.sites.find().pretty() 二、通过php实现数据更新,代码如下 <?php // 1.创建数据库连接对象 $manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
2 W# ^4 J+ f- z- X) C// 2.创建数据更新对象 $bulk = new MongoDB\Driver\BulkWrite; // 说明:更新index=2的数据,把原来的url更新为现在的内容,multi:只更新匹配到的第一条数据 $bulk->update( ['index' => 2], ['$set' => ['url' => 'https://www.java.com']], ['multi' => false, 'upsert' => false] );
. n, J$ V6 K& h1 B6 H- {// 3.创建更新操作级别对象 // 说明:MongoDB\Driver\WriteConcern::MAJORITY :抛出网络错误异常、服务器错误异常;并等待一个主服务器完成写操作 // 1000:等待超时时间 $writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000); ) T* P/ N# w q. d
// 4.执行写命令 // 说明:test.sites是test库下的sites集合 // $bulk:更新对象 // $writeConcern:写操作保证级别 $result = $manager->executeBulkWrite('test.sites', $bulk, $writeConcern);
; G. E; B9 ]1 p5 v1 f4 {3 b7 K// 5.输出更新后的结果 var_dump($result); 代码截图如下: 运行结果截图如下: 三、通过控制台查看更新后的数据,查看命令如下 db.sites.find().pretty()
- R9 S! C" | J+ M9 p4 r) L. h' c" e- g& z
|