(No version information available, might only be in Git)
Collection::remove — コレクションを削除する
特定の検索条件に合致するコレクションを削除します。 複数の操作が可能で、パラメータのバインドもサポートしています。
search_condition
変更するドキュメントに
マッチさせるために使う、有効な MySQL の式でなければなりません。
この式は、true
と評価される単純なものであれば可能です。
true
と評価された全てのドキュメントにマッチします。
もしくは、関数と指揮を次のように使うこともできます。
'CAST(_id AS SIGNED) >= 10'
,
'age MOD 2 = 0 OR age MOD 3 = 0'
,
'_id IN ["2","5","7","10"]'
.
操作が実行されない場合、この関数は追加の削除操作を追加できる Remove オブジェクトを返します。
削除操作が実行された場合、返されるオブジェクトには操作結果が含まれます。
例1 mysql_xdevapi\Collection::remove() 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");
$collection = $schema->createCollection("people");
$collection->add('{"name": "Alfred", "age": 18, "job": "Butler"}')->execute();
$collection->add('{"name": "Bob", "age": 19, "job": "Painter"}')->execute();
// 全ての Painter を削除
$collection
->remove("job in ('Painter')")
->execute();
// もっとも古い Bulter を削除
$collection
->remove("job in ('Butler')")
->sort('age desc')
->limit(1)
->execute();
// age が一番低いレコードを削除
$collection
->remove('true')
->sort('age desc')
->limit(1)
->execute();
?>