• 替换
REPLACE 的工作方式类似于 INSERT,但它会在插入新文档之前将具有相同ID的先前文档标记为已删除。
如果您想进行原地更新,请参阅 此部分。
SQL REPLACE
SQL REPLACE 语句的语法如下:
替换整个文档:
REPLACE INTO table [(column1, column2, ...)]
VALUES (value1, value2, ...)
[, (...)]仅替换选定字段:
REPLACE INTO table
SET field1=value1[, ..., fieldN=valueN]
WHERE id = <id>请注意,在此模式下只能通过 id 进行过滤。
注意:部分替换需要 Manticore Buddy。如果它不起作用,请确保 Buddy 已安装。
有关 UPDATE 与部分 REPLACE 的更多信息,请阅读 此处。
请参阅示例以获取更多详细信息。
JSON REPLACE
/replace:/index是一个别名端点,工作方式相同。类似 Elasticsearch 的端点
<table>/_doc/<id>:NOTE: Elasticsearch-like replace requires Manticore Buddy. If it doesn't work, make sure Buddy is installed.
部分替换:
<table name>可以是表名,也可以是cluster:table格式。如果需要,可以进行跨特定集群的更新。注意:部分替换需要 Manticore Buddy。如果它不起作用,请确保 Buddy 已安装。
请参阅示例以获取更多详细信息。
SQL:
REPLACE ... SET:
JSON
Elasticsearch-like
注意:部分替换需要 Manticore Buddy。如果它不起作用,请确保 Buddy 已安装。
Elasticsearch-like 部分替换:
注意:部分替换需要 Manticore Buddy。如果它不起作用,请确保 Buddy 已安装。
Elasticsearch-like 在集群中进行部分替换:
PHP:
Python:
Javascript:
java:
C#:
TypeScript:
Go:
REPLACE 适用于实时表和渗透表。你不能在普通表中替换数据。
当你执行 REPLACE 时,之前的文档不会被移除,而是被标记为已删除,因此表的大小会随着时间的推移增加,直到发生块合并。要强制进行块合并,请使用 OPTIMIZE 语句。
批量替换
你可以一次替换多个文档。查看批量添加文档以获取更多信息。
HTTP:
PHP:
最后更新于