日期:2014-05-16  浏览次数:20555 次

(转) RockMongo查询操作用法总结
1.简单查询
//xid=560870 and type=video
{
"xid": 560870,
"type": "video"
}

//查询数组中的数据
array(
"fruit.name"=>'aa'
)
返回如:
array (
  'fruit' =>
  array (
    'name' => 'aa',
    'age' => '34',
  ),
  'name' => 'caihuafeng',
)


2.模糊查询
//content like %爱%
array(
"content"=>new MongoRegex("/爱/i")
)

//查询以"爱"开头并且以"爱"结尾的数据
array(
"content"=>new MongoRegex("/^爱$/i")
)

3.大于、小于、不等于查询
//uid>=561484
array(
"uid"=>array('$gte'=>561484)
)

//uid>=0 and uid<=561484
array(
"uid"=>array('$gte'=>0,'$lte'=>561484)
)

//uid in (561484,0)
array(
"uid"=>array('$in'=>array(561484,0))
)

说明:
$gt   >
$gte  >=
$lt   <
$lte  <=
$ne   !=
$in : in
$nin: not in
$all: all
$not: 反匹配

4.查询指定字段
//查询存在uid字段的数据
array(
"uid"=>array('$exists'=>true)
)

//查询不存在uid字段的数据
array(
"uid"=>array('$exists'=>false)
)

5.查询字段类型
//查询content字段为字符型的数据
array(
"content"=>array('$type'=>2)
)
2   字符型
16  整型

6.查询数组指定的长度
//查询fruit大小为2的数据
array(
"fruit"=>array('$size'=>2)
)
返回如下:
array (
  '_id' => new MongoId("4e411abf7c1883973c0e2114"),
  'fruit' =>
      array (
        '0' => 'aa',
        '1' => 'bb',
      ),
  'name' => 'caihuafeng',
)

转自: http://hi.baidu.com/woaidelphi/blog/item/19f07613152df19c6438db36.html