(No version information available, might only be in SVN)
TokyoTyrantQuery::metaSearch — Récupère des enregistrements avec plusieurs requêtes
$queries
, int $type
)Exécute plusieurs requêtes sur une base de données et retourne les enregistrements correspondants. L'objet courant sera toujours l'objet le plus à gauche de la recherche.
queries
Un tableau d'objets TokyoTyrantQuery
type
Une constante parmi les constantes
TokyoTyrant::RDBMS_*
Retourne les lignes correspondantes et lance une exception TokyoTyrantException si une erreur survient.
Exemple #1 Exemple avec TokyoTyrantQuery::metaSearch()
<?php
/* Connexion à une base de données */
$tt = new TokyoTyrantTable("localhost", 1979);
/* Ajout de données de test */
$tt->put('cherry', array('color' => 'red'));
$tt->put('strawberry', array('color' => 'red'));
$tt->put('apple', array('color' => 'green'));
$tt->put('lemon', array('color' => 'yellow'));
/* Première requête */
$query = $tt->getQuery();
$query->addCond('color', TokyoTyrant::RDBQC_STREQ, 'red')->setOrder('color', TokyoTyrant::RDBQO_STRASC);
/* Seconde requête */
$query1 = $tt->getQuery();
$query1->addCond('color', TokyoTyrant::RDBQC_STREQ, 'yellow');
/* Récupère l'union entre les requêtes */
var_dump($query->metaSearch(array($query1), TokyoTyrant::RDBMS_UNION));
?>
L'exemple ci-dessus va afficher :
array(3) { ["cherry"]=> array(1) { ["color"]=> string(3) "red" } ["strawberry"]=> array(1) { ["color"]=> string(3) "red" } ["lemon"]=> array(1) { ["color"]=> string(6) "yellow" } }