|
查询操作 0 x+ y$ c3 d4 j8 t
- $filter["season_id"] = 106;/ j& B) j, g; s D: M( ?: V. R
- //$filter["array.8"] = 'cml123';
2 z7 n5 t% l* p
1 G6 p% E- j' @$ L" _$ D- $filter = ["matches.events_id"=>1];
" z# i; Y% p6 l: h7 T& g7 T4 a# ^- `
6 L4 m. S) w! T) V! u+ F; S" a- $filter = ["matches.events_id"=>['$in'=>[2,3,4,5,7]]];
( k# Y5 v7 i/ N: z* b - $filter = ["matches.events_id"=>['$lt'=>'8'];
6 P3 g" d/ W! S& T- G# q, R# { - 6 C- w0 ?! a }) c( [1 `, ^
- & }. ?8 k7 C" h
- 以上条件说明 http://bbs.cncml.com/forum.php?m ... &extra=page%3D1
; z# I4 T: r4 x! w( W% ^$ R4 T, z
6 j& X% S! }/ N8 w3 v4 [9 G- $options = [( w+ R, t; j1 }) q0 r) |0 ?
- 'projection' => ['_id' => 0,"s_lastid" => 1],
$ v7 z: e) d* O2 g. C. @8 r - 'limit' => 1, //显示条数
& c7 A% @1 y; S. s' M0 l - 'skip' => 1 //跳过几条9 x- ]6 r% V/ O4 p/ Z; D+ A
- ];
' k q& J N3 P P - ) [+ k4 u( O- s2 y. a
- $querys = new MongoDB\Driver\Query($filter,$options);
0 O4 O3 T. \7 d - $cursors = $manager->executeQuery('football.football_Competition_season_matches', $querys);
0 d8 Q6 }" z' V - $schedule= mg_querys($cursors);- U& T: j% i6 r5 y3 W- y a
- print_r($schedule);
5 j# g9 d! E3 p! r( ^2 B
复制代码
9 ~9 u8 q( b7 {( G! L8 \" q
2 n- y& r* N$ J `
8 v8 O# G) F7 J+ t2 p s* v
" U. n `$ C% M------------------------------------------------------------------------------------- 一、更新前通过控制台查看数据,查看命令如下 db.sites.find().pretty() 二、通过php实现数据更新,代码如下 <?php // 1.创建数据库连接对象 $manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
- u9 e4 X, t+ h6 I9 A// 2.创建数据更新对象 $bulk = new MongoDB\Driver\BulkWrite; // 说明:更新index=2的数据,把原来的url更新为现在的内容,multi:只更新匹配到的第一条数据 $bulk->update( ['index' => 2], ['$set' => ['url' => 'https://www.java.com']], ['multi' => false, 'upsert' => false] ); . r7 S$ D, K2 w; K, b! @
// 3.创建更新操作级别对象 // 说明:MongoDB\Driver\WriteConcern::MAJORITY :抛出网络错误异常、服务器错误异常;并等待一个主服务器完成写操作 // 1000:等待超时时间 $writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000); ( _7 N/ y( \3 K. @9 n2 H- G
// 4.执行写命令 // 说明:test.sites是test库下的sites集合 // $bulk:更新对象 // $writeConcern:写操作保证级别 $result = $manager->executeBulkWrite('test.sites', $bulk, $writeConcern); 6 h4 ?9 g- _1 k! g
// 5.输出更新后的结果 var_dump($result); 代码截图如下: 运行结果截图如下: 三、通过控制台查看更新后的数据,查看命令如下 db.sites.find().pretty()
, M# c( k2 \% E# W7 k6 F. I, l! W ^$ \% Q: ?/ o1 _* H ` Y
|