Collection::remove

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

Collection::removeRemove collection documents

说明

public mysql_xdevapi\Collection::remove(string $search_condition): mysql_xdevapi\CollectionRemove

Removes documents of a collection that meet specific search conditions. Multiple operations are allowed, and parameter binding is supported.

参数

search_condition

Must be a valid SQL expression used to match the documents to remove. This expression might be as simple as true, which matches all documents, or it might use functions and operators such as 'CAST(_id AS SIGNED) >= 10', 'age MOD 2 = 0 OR age MOD 3 = 0', or '_id IN ["2","5","7","10"]'.

返回值

If the operation is not executed, then the function will return a Remove object that can be used to add additional remove operations.

If the remove operation is executed, then the returned object will contain the result of the operation.

示例

示例 #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();

// Remove all painters
$collection
->remove("job in ('Painter')")
->
execute();

// Remove the oldest butler
$collection
->remove("job in ('Butler')")
->
sort('age desc')
->
limit(1)
->
execute();

// Remove record with highest age
$collection
->remove('true')
->
sort('age desc')
->
limit(1)
->
execute();
?>