(没有版本信息可用,可能只存在于 Git 中)
Collection::remove — 删除集合文档
删除满足特定搜索条件的集合文档。允许多个操作,并支持参数绑定。
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();
?>