每当你有一个具有特定条件的文档的索引时,如果条件永远停止为真,它是否会自动对文档进行自动索引?
例:
index a on Abucket(field) where field2='value'
当我创建索引时,将使用field2='value'
将Abucket上的所有文档编入索引。
但是如果文件改变field2='value2'
会发生什么。然后,将它改回value1
如何对没有field2
字段的文档起作用,我猜这些文档根本没有编入索引,但是如果稍后添加字段,它们会自动编入索引吗?
并且索引也可以在哪里查询?类似于WHERE ifmissing(field2, ifnull(bla bla bla))='value2'
我猜这些根本就没有编入索引,但是如果稍后添加字段,它们会自动编入索引吗?
是的,我们应该正确处理字段更改的情况,即使在indexe的WHERE子句中引用了这些字段。
我们还支持索引中WHERE子句的复杂表达式。
但如果这是你要去的地方,那么请告诉我一些警告。索引中WHERE子句的主要用例是将索引限制为某些类型的文档。索引的典型WHERE子句类似于WHERE type = 'airport'
。如果你发现自己做了一些更复杂的事情,我建议你在继续之前要谨慎一些。