TokyoTyrantQuery::key
TokyoTyrantQuery::next
TokyoTyrantQuery
PHP Manual

# TokyoTyrantQuery::metaSearch

Retrieve records with multiple queries

### Description

public array TokyoTyrantQuery::metaSearch ( array `$queries` , int `$type` )

Executes multiple queries on a database and returns matching records. The current object is always the left most object in the search.

### Parameters

`queries`

  Array of TokyoTyrantQuery objects

`type`

  One of the `TokyoTyrant::RDBMS_*` constants

### Return Values

Returns the matching rows and throws TokyoTyrantException on error

### Examples

Example #1 TokyoTyrantQuery::metaSearch example

`<?php
/* Connect to a table database */
$tt = new TokyoTyrantTable("localhost", 1979);
/* Add test data */
$tt->put('cherry', array('color' => 'red'));
$tt->put('strawberry', array('color' => 'red'));
$tt->put('apple', array('color' => 'green'));
$tt->put('lemon', array('color' => 'yellow'));
/* First query */
$query = $tt->getQuery();
$query->addCond('color', TokyoTyrant::RDBQC_STREQ, 'red')->setOrder('color', TokyoTyrant::RDBQO_STRASC);
/* Second query */
$query1 = $tt->getQuery();
$query1->addCond('color', TokyoTyrant::RDBQC_STREQ, 'yellow');
/* Get union between the queries */
var_dump($query->metaSearch(array($query1), TokyoTyrant::RDBMS_UNION));
?>`

The above example will output:

    array(3) {
      ["cherry"]=>
      array(1) {
        ["color"]=>
        string(3) "red"
      }
      ["strawberry"]=>
      array(1) {
        ["color"]=>
        string(3) "red"
      }
      ["lemon"]=>
      array(1) {
        ["color"]=>
        string(6) "yellow"
      }
    }

### See Also

- TokyoTyrantQuery::search