查询操作 ) |, B. D* A( D* H! H
- $filter["season_id"] = 106;# Y; S V. E! ^: j) F1 n# Q
- //$filter["array.8"] = 'cml123';
0 c" a' @+ k3 @ - ) b! I8 c' V: C7 E* F8 Q
- $filter = ["matches.events_id"=>1];! L( C) b) m0 _0 A6 z5 B
' u* ]! r8 u' E$ A! w2 Y; g- $filter = ["matches.events_id"=>['$in'=>[2,3,4,5,7]]];* \" Z4 c# f* y0 q$ C
- $filter = ["matches.events_id"=>['$lt'=>'8'];% E8 t, j6 p/ ` Q6 F- C/ ~4 R
% w. I$ ?7 l1 ` x- - M' L. X; `% x2 k( Z3 J3 `, k: M
- 以上条件说明 http://bbs.cncml.com/forum.php?m ... &extra=page%3D12 z7 u# L2 ?+ n9 i* v# t6 `
6 I, z( \0 L6 M' n0 G* i- $options = [2 w$ j7 x0 \* d3 R& }/ b4 ]* j
- 'projection' => ['_id' => 0,"s_lastid" => 1],7 p0 q S8 a7 H4 f/ W
- 'limit' => 1, //显示条数
7 @2 v- z0 \, w+ Z - 'skip' => 1 //跳过几条
& y8 U: I3 [: T - ];5 c* z/ G8 ?4 q. N% U3 w; x, L
1 P8 k% n, P0 L7 b- $querys = new MongoDB\Driver\Query($filter,$options);" O2 W( ~' ?( X" o9 E4 o0 L
- $cursors = $manager->executeQuery('football.football_Competition_season_matches', $querys);; o7 d$ q. c1 U0 q; L. }7 {
- $schedule= mg_querys($cursors);
/ j9 I. u& c, Q& @0 B4 L; m0 n - print_r($schedule); q9 \ b! W4 w& Z0 ~
复制代码
% W1 f6 N( V, M8 t' l2 N/ M
2 p* K& ]$ e1 c4 h; S/ l$ d1 E
; }( I6 i% W# y9 M- b. X, t |' a6 A
------------------------------------------------------------------------------------- 一、更新前通过控制台查看数据,查看命令如下 db.sites.find().pretty() 二、通过php实现数据更新,代码如下 <?php // 1.创建数据库连接对象 $manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$ y4 h- ~0 j7 o. i+ a5 N// 2.创建数据更新对象 $bulk = new MongoDB\Driver\BulkWrite; // 说明:更新index=2的数据,把原来的url更新为现在的内容,multi:只更新匹配到的第一条数据 $bulk->update( ['index' => 2], ['$set' => ['url' => 'https://www.java.com']], ['multi' => false, 'upsert' => false] ); 3 @% I4 Q! H! q$ f, I
// 3.创建更新操作级别对象 // 说明:MongoDB\Driver\WriteConcern::MAJORITY :抛出网络错误异常、服务器错误异常;并等待一个主服务器完成写操作 // 1000:等待超时时间 $writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000); " z% s- z+ R( l, w
// 4.执行写命令 // 说明:test.sites是test库下的sites集合 // $bulk:更新对象 // $writeConcern:写操作保证级别 $result = $manager->executeBulkWrite('test.sites', $bulk, $writeConcern); ; T! g0 b' }& |* {' q: V0 ]
// 5.输出更新后的结果 var_dump($result); 代码截图如下: 运行结果截图如下: 三、通过控制台查看更新后的数据,查看命令如下 db.sites.find().pretty()
3 a G4 {, G" A3 j
8 D; J9 u8 s! l% Z4 t# C" O |