|
查询操作 4 [1 x! @3 k( s5 \ s: Q
- $filter["season_id"] = 106;
- `! x" F5 Z: z; F2 U, @: s - //$filter["array.8"] = 'cml123';
3 B' e' k( s8 u( J- I& u
3 ~: A. |8 P; r! p' B- $filter = ["matches.events_id"=>1];2 L% t4 {$ ? ^; w# j
- * e0 r0 r$ L F7 J% f$ ]4 s
- $filter = ["matches.events_id"=>['$in'=>[2,3,4,5,7]]];
+ _5 a: u# @9 g) o - $filter = ["matches.events_id"=>['$lt'=>'8'];
2 [5 K# \) R4 Z/ `! U) {) B2 _: u& S - 2 Q9 |" ?4 | u7 P* _1 c0 \
- . f! u# ?6 N9 ^4 B
- 以上条件说明 http://bbs.cncml.com/forum.php?m ... &extra=page%3D1, D* M; M0 K }% S/ l
- 4 C; s8 f, B! }0 `
- $options = [
8 M: C1 d2 ?8 G% r - 'projection' => ['_id' => 0,"s_lastid" => 1],
$ i+ y# S8 ^2 n, o1 n - 'limit' => 1, //显示条数9 f1 z& h: [, w7 A0 j5 q
- 'skip' => 1 //跳过几条& ]( j/ B$ n, b+ J8 Z( X
- ];
+ f+ T% E+ y, @# a1 C; M7 |
+ V; Y! e9 j) d5 K `- $querys = new MongoDB\Driver\Query($filter,$options);
4 H. ^- r' A, S4 m+ b) n - $cursors = $manager->executeQuery('football.football_Competition_season_matches', $querys);/ y1 N6 B9 W1 X. Q4 d$ g
- $schedule= mg_querys($cursors);% F0 Q3 D4 |( {) w
- print_r($schedule);
9 J! @0 J. d) O( Y$ M# I: s& p
复制代码 ! G8 u' w6 V+ r( R
4 e* z; v& U) J+ G
. W0 j$ N) `% \% u+ D# A% X+ ~) U9 X0 Q
------------------------------------------------------------------------------------- 一、更新前通过控制台查看数据,查看命令如下 db.sites.find().pretty() 二、通过php实现数据更新,代码如下 <?php // 1.创建数据库连接对象 $manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
, [: e8 U1 V& A! m# ?2 v9 X// 2.创建数据更新对象 $bulk = new MongoDB\Driver\BulkWrite; // 说明:更新index=2的数据,把原来的url更新为现在的内容,multi:只更新匹配到的第一条数据 $bulk->update( ['index' => 2], ['$set' => ['url' => 'https://www.java.com']], ['multi' => false, 'upsert' => false] );
/ Y2 X8 U/ @. [( \1 X9 ^. l// 3.创建更新操作级别对象 // 说明:MongoDB\Driver\WriteConcern::MAJORITY :抛出网络错误异常、服务器错误异常;并等待一个主服务器完成写操作 // 1000:等待超时时间 $writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000); 4 T+ d2 `; D3 F3 D- r9 I! n
// 4.执行写命令 // 说明:test.sites是test库下的sites集合 // $bulk:更新对象 // $writeConcern:写操作保证级别 $result = $manager->executeBulkWrite('test.sites', $bulk, $writeConcern); # W$ e* r9 R, j! n! L
// 5.输出更新后的结果 var_dump($result); 代码截图如下: 运行结果截图如下: 三、通过控制台查看更新后的数据,查看命令如下 db.sites.find().pretty()
0 E9 M4 |+ _, M9 |5 N" i" L: S X! ] J+ r
|