44<titleabbrev>Correlate data with LOOKUP JOIN</titleabbrev> 
55++++ 
66
7- The {esql}  <<esql-lookup-join,LOOKUP join>>  
7+ The {esql}  <<esql-lookup-join,LOOKUP join>>
88processing command combines data from your {esql}  query results
99table with matching records from a specified lookup index. It adds
1010fields from the lookup index as new columns to your results table based
@@ -29,12 +29,11 @@ in the fact that they both help you join data together. You should use
2929
3030* Your enrichment data changes frequently 
3131* You want to avoid index-time processing 
32- * You're working with regular indices 
33- * You need to preserve distinct matches 
32+ * You want SQL-like behavior, so that multiple matches result in multiple rows 
3433* You need to match on any field in a lookup index 
3534* You use document or field level security 
36- * You want to restrict users to a  specific lookup indices that they can  
37- you 
35+ * You want to restrict users to use only  specific lookup indices 
36+ * You do not need to match using ranges or spatial relations 
3837
3938[discrete] 
4039[[esql-how-lookup-join-works]] 
@@ -146,7 +145,7 @@ To use `LOOKUP JOIN`, the following requirements must be met:
146145* *Compatible data types*: The join key and join field in the lookup
147146index must have compatible data types. This means:
148147** The data types must either be identical or be internally represented
149- as the same type in Elasticsearch's type system 
148+ as the same type in {esql} 
150149** Numeric types follow these compatibility rules:
151150*** `short` and `byte` are compatible with `integer` (all represented as
152151`int`)
@@ -164,18 +163,15 @@ representations, see the <<esql-supported-types,Supported Field Types documentat
164163
165164The following are the current limitations with `LOOKUP JOIN`
166165
167- * `LOOKUP JOIN` will be successful if the join field in the lookup index
168- is a `KEYWORD` type. If the main index's join field is `TEXT` type, it
169- must have an exact `.keyword` subfield that can be matched with the
170- lookup index's `KEYWORD` field.
171166* Indices in <<index-mode-setting,lookup>> mode are always single-sharded.
172167* Cross cluster search is unsupported. Both source and lookup indices
173168must be local.
169+ * Currently, only matching on equality is supported.
174170* `LOOKUP JOIN` can only use a single match field and a single index.
175171Wildcards, aliases, datemath, and datastreams are not supported.
176- * The name of the match field in
177- `LOOKUP JOIN lu++_++idx ON match++_++field` must match an existing field 
178- in the query. This may require renames or evals to  achieve.
172+ * The name of the match field in `LOOKUP JOIN lu_idx ON match_field` must match 
173+ an existing field in the query. This may require `RENAME`s or `EVAL`s to 
174+ achieve.
179175* The query will circuit break if there are too many matching documents
180176in the lookup index, or if the documents are too large. More precisely,
181177`LOOKUP JOIN` works in batches of, normally, about 10,000 rows; a large
0 commit comments