Let's say we are storing objects of type vehicle which have a reference to 
a type owner in the following structure. Then Running the following request:

`POST: localhost:9200/15/vehicles/_search'

with the following body:

     { "query": { "wildcard": {"make":"*toy*"} }}

returns the relevant objects:

         "took": 5,
         "timed_out": false,
         "_shards": {
            "total": 5,
            "successful": 5,
            "failed": 0
         },
        "hits": {
            "total": 1,
        "max_score": 1,
        "hits": [
            {
                "_index": "15.index",
                "_type": "vehicle",
                "_id": "352",
                "_score": 1,
                "_source": {
                    "id": "352",
                    "name": "toyota",
                    "owner_id": "12",
                    "owner": {
                        "id": "12",
                        "name": "John Smith",
                        "login_id": 1,
                        "active": true,
                    }
                }
            }
        ]
    }

I am now attempting to query by nested object (e.g. all vehicles that 
belong to user John Smith)

     {"query": {"wildcard": {"owner.name": "*John*"}}}

returns no results, while: 

     {"query": {"wildcard": {"owner": {"name": "*John*"}}}}

errors out with:

      "error": "SearchPhaseExecutionException[Failed to execute phase 
[query], all shards failed; shardFailures {....
      [4]: SearchParseException[....
      Parse Failure [Failed to parse source [{ \"query\": { \"wildcard\": 
{\"owner\": {\"name\":\"*ab*\"} }}}]]]; nested: QueryParsingException[....
     [wildcard] query does not support [name]]; }{....
     [3]: SearchParseException[....
    : Parse Failure [Failed to parse source [{ \"query\": { \"wildcard\": 
{\"owner\": {\"name\":\"*ab*\"} }}}]]]; nested: QueryParsingException[....
     [wildcard] query does not support [name]]; }{....
     [2]: SearchParseException[....
     ]: Parse Failure [Failed to parse source [{ \"query\": { \"wildcard\": 
{\"owner\": {\"name\":\"*ab*\"} }}}]]]; nested: QueryParsingException[....
     [wildcard] query does not support [name]]; }{....
     : SearchParseException[[....
    : Parse Failure [Failed to parse source [{ \"query\": { \"wildcard\": 
{\"owner\": {\"name\":\"*ab*\"} }}}]]]; nested: QueryParsingException[....
     [wildcard] query does not support [name]]; }{....
     [0]: SearchParseException[....: Parse Failure [Failed to parse source 
[{ \"query\": { \"wildcard\": {\"owner\": {\"name\":\"*ab*\"} }}}]]]; 
nested: QueryParsingException[.... [wildcard] query does not support 
[name]]; }]",
    "status": 400

What is the correct format for a query (wildcard or otherwise) against a 
nested object? How specifically do wildcard queries differ from that 
template (if at all)?

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/55a91fbc-5bc4-44b6-a39e-1efc942fe63d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to