OpenSearch/docs/reference/query-dsl/wildcard-query.asciidoc

76 lines
2.2 KiB
Plaintext

[[query-dsl-wildcard-query]]
=== Wildcard query
++++
<titleabbrev>Wildcard</titleabbrev>
++++
Returns documents that contain terms matching a wildcard pattern.
A wildcard operator is a placeholder that matches one or more characters. For
example, the `*` wildcard operator matches zero or more characters. You can
combine wildcard operators with other characters to create a wildcard pattern.
[[wildcard-query-ex-request]]
==== Example request
The following search returns documents where the `user` field contains a term
that begins with `ki` and ends with `y`. These matching terms can include `kiy`,
`kity`, or `kimchy`.
[source,console]
----
GET /_search
{
"query": {
"wildcard": {
"user": {
"value": "ki*y",
"boost": 1.0,
"rewrite": "constant_score"
}
}
}
}
----
[[wildcard-top-level-params]]
==== Top-level parameters for `wildcard`
`<field>`::
(Required, object) Field you wish to search.
[[wildcard-query-field-params]]
==== Parameters for `<field>`
`value`::
(Required, string) Wildcard pattern for terms you wish to find in the provided
`<field>`.
+
--
This parameter supports two wildcard operators:
* `?`, which matches any single character
* `*`, which can match zero or more characters, including an empty one
WARNING: Avoid beginning patterns with `*` or `?`. This can increase
the iterations needed to find matching terms and slow search performance.
--
`boost`::
(Optional, float) Floating point number used to decrease or increase the
<<relevance-scores,relevance scores>> of a query. Defaults to `1.0`.
+
You can use the `boost` parameter to adjust relevance scores for searches
containing two or more queries.
+
Boost values are relative to the default value of `1.0`. A boost value between
`0` and `1.0` decreases the relevance score. A value greater than `1.0`
increases the relevance score.
`rewrite`::
(Optional, string) Method used to rewrite the query. For valid values and more information, see the
<<query-dsl-multi-term-rewrite, `rewrite` parameter>>.
==== Notes
===== Allow expensive queries
Wildcard queries will not be executed if <<query-dsl-allow-expensive-queries, `search.allow_expensive_queries`>>
is set to false.