Collection::remove
(No version information available, might only be in Git)
Collection::remove — Удаляет документы коллекции
Описание
$search_condition
) : mysql_xdevapi\CollectionRemoveУдаляет коллекции, которые соответствуют определенным условиям поиска. Допускается несколько операций и поддерживается привязка параметров.
Список параметров
-
search_condition
-
Должно быть корректным выражением SQL, используемым для сопоставления документов, которые нужно изменить. Выражение может быть таким же простым, как
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()
<?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();
// Удаление всех художников
$collection
->remove("job in ('Painter')")
->execute();
// Удаление самого старого дворецкого
$collection
->remove("job in ('Butler')")
->sort('age desc')
->limit(1)
->execute();
// Удаление записи с самым низким возрастом
$collection
->remove('true')
->sort('age desc')
->limit(1)
->execute();
?>