龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

php中的mongodb select常用操作代码示例(2)

时间:2014-09-09 02:22来源:网络整理 作者:网络 点击:
分享到:
复制代码 代码如下: db.books.find({},{"money":0,"auther":0}); //money和auther不显示 { "_id" : 1, "title" : "红楼梦", "typeColumn" : "test", "code" : 10 } { "_id" : 2, "title" : "围城",

复制代码 代码如下:

> db.books.find({},{"money":0,"auther":0});      //money和auther不显示 
{ "_id" : 1, "title" : "红楼梦", "typeColumn" : "test", "code" : 10 } 
{ "_id" : 2, "title" : "围城", "typeColumn" : "test", "code" : 20 } 
{ "_id" : 3, "title" : "朝发白帝城", "typeColumn" : "test", "code" : 30 } 
{ "_id" : 4, "title" : "将近酒", "code" : 40 } 
 
> db.books.find({},{"title":1});          //只显示title列 
{ "_id" : 1, "title" : "红楼梦" } 
{ "_id" : 2, "title" : "围城" } 
{ "_id" : 3, "title" : "朝发白帝城" } 
{ "_id" : 4, "title" : "将近酒" } 
 
/**
*money在60到100之间,typecolumn和money二列必须存在
*/ 
> db.books.find({money:{$gt:60,$lte:100}},{"typeColumn":1,"money":1}); 
{ "_id" : 1, "typeColumn" : "test", "money" : 80 } 
{ "_id" : 4, "money" : 90 } 

php代码如下,按顺序对应的:

复制代码 代码如下:

$result = $collection->find()->fields(array("auther"=>false,"money"=>false));    //不显示auther和money列 
 
$result = $collection->find()->fields(array("title"=>true));      //只显示title列 
 
/**
 *money在60到100之间,typecolumn和money二列必须存在
 */ 
$where=array('typeColumn'=>array('$exists'=>true),'money'=>array('$exists'=>true,'$gte'=>60,'$lte'=>100)); 
$result = $collection->find($where); 

5、分页

复制代码 代码如下:

> db.books.find().skip(1).limit(1);  //跳过第条,取一条 
{ "_id" : 2, "title" : "围城", "auther" : "钱钟书", "typeColumn" : "test", "money" : 56, "code" : 20 } 

这根mysql,limit,offset有点类似,php代码如下:

复制代码 代码如下:

$result = $collection->find()->limit(1)->skip(1);//跳过 1 条记录,取出 1条 

6、排序

复制代码 代码如下:

> db.books.find().sort({money:1,code:-1});    //1表示降序 -1表示升序,参数的先后影响排序顺序  
{ "_id" : 3, "title" : "朝发白帝城", "auther" : "李白", "typeColumn" : "test", "money" : 30, "code" : 30 } 
{ "_id" : 2, "title" : "围城", "auther" : "钱钟书", "typeColumn" : "test", "money" : 56, "code" : 20 } 
{ "_id" : 1, "title" : "红楼梦", "auther" : "曹雪芹", "typeColumn" : "test", "money" : 80, "code" : 10 } 
{ "_id" : 4, "title" : "将近酒", "auther" : "李白", "money" : 90, "code" : 40 }

php代码如下:

复制代码 代码如下:

$result = $collection->find()->sort(array('code'=>1,'money'=>-1)); 

7、模糊查询

精彩图集

赞助商链接