Set document field filter

- « CollectionFind::execute

- CollectionFind::groupBy »

- PHP Manual
- mysql_xdevapi\CollectionFind
- Set document field filter

# CollectionFind::fields

(No version information available, might only be in Git)

CollectionFind::fields — Set document field filter

### Description

public mysql_xdevapi\CollectionFind::fields(string `$projection`): mysql_xdevapi\CollectionFind

Defined the columns for the query to return. If not defined then all columns are used.

### Parameters

`projection`

  Can either be a single string or an array of string, those strings are identifying the columns that have to be returned for each document that match the search condition.

### Return Values

A CollectionFind object that can be used for further processing.

### Examples

Example #1 mysql_xdevapi\CollectionFind::fields() example

    <?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");$create = $schema->createCollection("people");$create  ->add('{"name": "Alfred", "age": 18, "job": "Butler"}')  ->execute();// ...$collection = $schema->getCollection("people");$result = $collection  ->find('job like :job and age > :age')  ->bind(['job' => 'Butler', 'age' => 16])  ->fields('name')  ->execute();var_dump($result->fetchAll());?>

The above example will output something similar to:

    array(1) {
      [0]=>
      array(1) {
        ["name"]=>
        string(6) "Alfred"
      }
    }