Skip to content

ES|QL: Allow Full Text Functions on the Right Side of Lookup Join #135621

@julian-elastic

Description

@julian-elastic

Description

Add support for Full Text Function on the right side of the lookup join. The full text functions must only refer to the fields from the right side and be fully pushable to Lucene.

FROM employees
| EVAL language_code_left = languages //make sure the field names are unique
| LOOKUP JOIN languages_lookup ON language_code_left == language_code AND MATCH(language_name, "Spanish") 
| LOOKUP JOIN skills_lookup on employee_id == skills_lookup_id AND MATCH(skill_desc, "knitting and stuff")

As a side benefit, we will also support ANY expression that refers to only fields on the right side and is fully pushable to Lucene. This also includes OR and NOT support inside such expressions.

FROM employees
| EVAL language_code_left = languages //make sure the field names are unique
| LOOKUP JOIN languages_lookup ON language_code_left == language_code AND (language_id < 5 OR language_name like ("A*", "E*"))

Metadata

Metadata

Type

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions