(No version information available, might only be in Git)
Collection::find — Pesquisa por um documento
Pesquisa uma coleção do banco de dados por um documento ou conjunto de documentos. Os documentos encontrados são retornados como um objeto CollectionFind que servirá para modificação ou para busca de resultados.
search_condition
Embora seja opcional, normalmente uma condição é definida para limitar os resultados a um subconjunto de documentos.
Múltiplos elementos podem fazer parte da condição e a sintaxe suporta vinculação de parâmetros. A expressão usada como condição de pesquisa precisa ser uma expressão SQL válida. Se nenhuma condição de pesquisa for informada (campo vazio), será assumida a expressão find('true').
Um objeto CollectionFind para verificar a operação, ou buscar os documentos encontrados.
Exemplo #1 Exemplo de mysql_xdevapi\Collection::find()
<?php
$session = mysql_xdevapi\getSession("mysqlx://user:password@localhost");
$session->sql("DROP DATABASE IF EXISTS addressbook")->execute();
$session->sql("CREATE DATABASE addressbook")->execute();
$schema = $session->getSchema("addressbook");
$collection = $schema->createCollection("people");
$collection->add('{"name": "Alfred", "age": 18, "job": "Butler"}')->execute();
$collection->add('{"name": "Bob", "age": 19, "job": "Swimmer"}')->execute();
$collection->add('{"name": "Fred", "age": 20, "job": "Construction"}')->execute();
$collection->add('{"name": "Wilma", "age": 21, "job": "Teacher"}')->execute();
$collection->add('{"name": "Suki", "age": 22, "job": "Teacher"}')->execute();
$find = $collection->find('job LIKE :job AND age > :age');
$result = $find
->bind(['job' => 'Teacher', 'age' => 20])
->sort('age DESC')
->limit(2)
->execute();
print_r($result->fetchAll());
?>
O exemplo acima produzirá:
Array ( [0] => Array ( [_id] => 00005b6b536100000000000000a8 [age] => 22 [job] => Teacher [name] => Suki ) [1] => Array ( [_id] => 00005b6b536100000000000000a7 [age] => 21 [job] => Teacher [name] => Wilma ) )