Retrieve a list of distinct values for the given key across a collection.


(PECL mongo >=1.2.11)

MongoCollection::distinctRetrieve a list of distinct values for the given key across a collection.

Описание

public array MongoCollection::distinct ( string $key [, array $query ] )

The distinct command returns a list of distinct values for the given key across a collection.

Список параметров

key

The key to use.

query

An optional query parameters

Возвращаемые значения

Returns an array of distinct values, или FALSE в случае возникновения ошибки

Примеры

Пример #1 MongoCollection::distinct() example

<?php
$m 
= new Mongo;
$db $m->selectDB("test");
$db->dropCollection("distinct");
$c $db->distinct;

$c->insert(array("stuff" => "bar""zip-code" => 10010));
$c->insert(array("stuff" => "foo""zip-code" => 10010));
$c->insert(array("stuff" => "bar""zip-code" => 99701), array("w" => 1));

$retval $c->distinct("zip-code");
var_dump($retval);

$retval $c->distinct("zip-code", array("stuff" => "foo"));
var_dump($retval);

$retval $c->distinct("zip-code", array("stuff" => "bar"));
var_dump($retval);

?>

Результат выполнения данного примера:

 array(2) {   [0]=>   int(10010)   [1]=>   int(99701) } array(1) {   [0]=>   int(10010) } array(2) {   [0]=>   int(10010)   [1]=>   int(99701) } 

Пример #2 MongoCollection::distinct() example on a embedded document

<?php
$c
->insert(array("user" => array("points" => 25)));
$c->insert(array("user" => array("points" => 31)));
$c->insert(array("user" => array("points" => 25)));

$retval $c->distinct("user.points");
var_dump($retval);

$retval $c->distinct("user.nonexisting");
var_dump($retval);
?>

Результат выполнения данного примера:

 array(2) {   [0]=>   int(25)   [1]=>   int(31) } array(0) { }