|
查询操作 / w2 R l6 b9 W
- $filter["season_id"] = 106;
Q" K7 _. [. \( y - //$filter["array.8"] = 'cml123';
* \5 N Z! ?. Z/ S6 f; z6 K, R - & V" T3 p/ o( d% j( U$ z
- $filter = ["matches.events_id"=>1];
7 _7 \8 L8 h& ]1 M" M
$ K, r F' ^- `& N/ R- $filter = ["matches.events_id"=>['$in'=>[2,3,4,5,7]]];8 W) W, e5 v1 a- S
- $filter = ["matches.events_id"=>['$lt'=>'8'];7 k" Q$ ^' ~) A p! a" e& J! S5 \
- 8 Z/ X6 |+ `$ O$ {8 J# P
- , k- Q7 P! z" o0 R( q6 F$ }- v2 f
- 以上条件说明 http://bbs.cncml.com/forum.php?m ... &extra=page%3D12 O3 n; e; ]; B3 W: [- ?
@2 X4 \' S/ p/ g, @- $options = [
* S9 ~% V% ~5 b( O. R- C8 p - 'projection' => ['_id' => 0,"s_lastid" => 1],
+ d9 O w' B' ]3 \2 j - 'limit' => 1, //显示条数% m L' N$ V1 X5 e; h
- 'skip' => 1 //跳过几条
: R2 a! R) V# c- U1 u4 Z6 _ - ];1 y* K a/ E! S$ J
' ]/ c: K5 E; g v. W1 N; `- $querys = new MongoDB\Driver\Query($filter,$options);
/ i) h) h! b/ \ Y& V9 a7 i5 ~ - $cursors = $manager->executeQuery('football.football_Competition_season_matches', $querys);
+ t; v* o/ z5 G+ [; B - $schedule= mg_querys($cursors);
1 {" _3 g3 r' n - print_r($schedule);6 i% e: v# l7 q7 O! X. ^) O( @; U
复制代码 6 n( s( W3 [1 i: |" y- H2 t
+ W" j# j. E- ?& N7 L
/ k) z* G, U5 [2 e4 V y& V* C! \" j; o7 Q9 \
------------------------------------------------------------------------------------- 一、更新前通过控制台查看数据,查看命令如下 db.sites.find().pretty() 二、通过php实现数据更新,代码如下 <?php // 1.创建数据库连接对象 $manager = new MongoDB\Driver\Manager("mongodb://localhost:27017"); ; j O' T6 W' t
// 2.创建数据更新对象 $bulk = new MongoDB\Driver\BulkWrite; // 说明:更新index=2的数据,把原来的url更新为现在的内容,multi:只更新匹配到的第一条数据 $bulk->update( ['index' => 2], ['$set' => ['url' => 'https://www.java.com']], ['multi' => false, 'upsert' => false] ); - V, n5 ?6 V( H3 t
// 3.创建更新操作级别对象 // 说明:MongoDB\Driver\WriteConcern::MAJORITY :抛出网络错误异常、服务器错误异常;并等待一个主服务器完成写操作 // 1000:等待超时时间 $writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000); 9 `. B% g, i3 L" O. @0 i2 S8 \
// 4.执行写命令 // 说明:test.sites是test库下的sites集合 // $bulk:更新对象 // $writeConcern:写操作保证级别 $result = $manager->executeBulkWrite('test.sites', $bulk, $writeConcern); ' \7 I& a# T/ n) y# q. V
// 5.输出更新后的结果 var_dump($result); 代码截图如下: 运行结果截图如下: 三、通过控制台查看更新后的数据,查看命令如下 db.sites.find().pretty()
/ W+ Q) |: K$ W# q: y+ F7 a' Z
# H. D0 N7 h' g* T0 @# K |