了解 Meilisearch 如何处理不同数据类型:字符串、数值、布尔值、数组和对象。
'-' | '_' | '\'' | ':' | '/' | '\\' | '@' | '"' | '+' | '~' | '=' | '^' | '*' | '#'
'.' | ';' | ',' | '!' | '?' | '(' | ')' | '[' | ']' | '{' | '}'| '|'
Bruce
和 Willis
之间的距离等于 1。Vin
和 Diesel
之间的距离也等于 1。然而,Willis
和 Vin
之间的距离等于 8。同样的计算也适用于 Bruce
和 Diesel
(10)、Bruce
和 Vin
(9),以及 Willis
和 Diesel
(9)。 让我们看另一个例子。给定两个文档:Bruce Willis
时,002
将是第一个返回的文档,001
将是第二个。发生这种情况是因为文档002
中Bruce
和Willis
之间的邻近距离等于2,而文档001
中Bruce
和Willis
之间的距离等于8,因为句号字符.
是一个硬空格。
integer
, float
)会被转换为人类可读的十进制数字字符串表示。数值类型可以像转换为字符串一样进行搜索。 您可以添加自定义排名规则,以在文档中具有数值的给定属性上创建升序或降序排序规则。 您还可以创建过滤器。>
, >=
, <
, <=
和 TO
关系运算符仅适用于数值。true
或false
,会被接收并转换为小写的人类可读文本(true
和false
)。布尔值可以像转换为字符串一样进行搜索。
null
null
类型可以被推送到 Meilisearch,但它不会被纳入索引。
patient_name
键包含一个对象:address
,其中包含家庭地址和工作地址,每个地址本身都是一个对象。扁平化后,文档将如下所示:0
和 1
2022-01-01
与 Jester Lavorre
有预约的患者。相反,它会返回与 Jester Lavorre
有预约的患者,以及在 2022-01-01
有预约的患者。 解决此限制的最佳方法是重新格式化您的数据。上面的示例可以通过将预约数据合并到新的 appointmentsMerged
字段中来修复,以便预约和医生之间的关系保持不变:.
将被视为硬空格。 10,3
将被拆分成两个字符串——10
和3
——而不是作为数字类型处理。