【发布时间】:2019-02-26 17:20:56
【问题描述】:
FOR col_name IN ['col_1', 'col_2']
FOR d IN FULLTEXT(col_name, 'label', @value)
RETURN d
无效
但是
FOR d IN FULLTEXT('col_1', 'label', @value)
RETURN d
工作正常
我正在使用 arango 3.4.2-1
【问题讨论】:
FOR col_name IN ['col_1', 'col_2']
FOR d IN FULLTEXT(col_name, 'label', @value)
RETURN d
无效
但是
FOR d IN FULLTEXT('col_1', 'label', @value)
RETURN d
工作正常
我正在使用 arango 3.4.2-1
【问题讨论】:
一般你可以像这样查询两个集合:
FOR col1doc IN col_1
FILTER col1doc.foo == 'bar'
FOR col2doc IN col_2
FILTER col1doc.joinfield == col2doc.joinfield
RETURN {col1doc: col1doc, col2doc: col2doc}
作为它的documented in the AQL manual for joins
请注意,简单的字符串相等可以使用FILTERs 完成,不需要全文索引。
对于两个集合的旧全文索引,您可以使用如下子查询:
let col1Documents = (FULLTEXT(col_1, 'label', @value))
let col2Documents = (FULLTEXT(col_2, 'label', @value))
RETURN CONCAT(col1Documents, col2Documents)
实现这一点的更现代的方法是to use ArangoSearch views,它可以处理大量集合。
【讨论】: