druid/docs/content/querying/searchqueryspec.md

2.1 KiB


layout: doc_page

Refining Search Queries

Search query specs define how a "match" is defined between a search value and a dimension value. The available search query specs are:

InsensitiveContainsSearchQuerySpec

If any part of a dimension value contains the value specified in this search query spec, regardless of case, a "match" occurs. The grammar is:

{
  "type"  : "insensitive_contains",
  "value" : "some_value"
}

FragmentSearchQuerySpec

If any part of a dimension value contains all of the values specified in this search query spec, regardless of case by default, a "match" occurs. The grammar is:

{ 
  "type" : "fragment",
  "case_sensitive" : false,
  "values" : ["fragment1", "fragment2"]
}

ContainsSearchQuerySpec

If any part of a dimension value contains the value specified in this search query spec, a "match" occurs. The grammar is:

{
  "type"  : "contains",
  "case_sensitive" : true,
  "value" : "some_value"
}

RegexSearchQuerySpec

If any part of a dimension value contains the pattern specified in this search query spec, a "match" occurs. The grammar is:

{
  "type"  : "regex",
  "pattern" : "some_pattern"
}