# Elasticsearch array match against another - inverse array search - AND subset

**URL:** <https://discuss.elastic.co/t/elasticsearch-array-match-against-another-inverse-array-search-and-subset/32059>\
**Category:** Elasticsearch\
**Created:** [October 13, 2015, 6:37am UTC](https://discuss.elastic.co/t/elasticsearch-array-match-against-another-inverse-array-search-and-subset/32059 "2015-10-13T06:37:33Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![rajeshetty](https://avatars.discourse-cdn.com/v4/letter/r/e0b2c6/32.png) [@rajeshetty](https://discuss.elastic.co/u/rajeshetty)\
**Post date:** [October 13, 2015, 6:37am UTC](https://discuss.elastic.co/t/elasticsearch-array-match-against-another-inverse-array-search-and-subset/32059/1 "2015-10-13T06:37:33Z")

</div>

I have 2 models

- User profile + activities

- Activities Search

required\_activities is an array

```
["activity-id1", "activity-id2"]

```

must\_have\_one\_activities is an array of maps

```
	[
		{
			"activity_ids" : ["activity-id3", "activity-id4"]
		},
		{
			"activity_ids" : ["activity-id5", "activity-id6"]
		},
	]

```

There are 2 types of search .

- Finding users that match activities based on activities\_search model - thats simple as applying MUST terms . e.g find all the users where users have all required\_activities and at least one from each of the must\_have\_one\_activities.

I'm trying to figure out how to perform following search ?

- Second search is other inverse where I need to find all activities that match given user's activities against all activities\_search model. e.g. find all activities\_searches where current user's activities match again required\_activities (MUST have ALL the ones listed in required\_activities) and must\_have\_one\_activities (MUST have at least the ones listed in must\_have\_one\_activities).

Its almost like finding user activities subset in required\_activities array where user MUST have all activities required\_activities array.

Any idea how to perform this inverse search ?,

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2017, 11:45pm UTC](https://discuss.elastic.co/t/elasticsearch-array-match-against-another-inverse-array-search-and-subset/32059/2 "2017-07-05T23:45:04Z")

</div>

Closed on July 5, 2017, 11:45pm UTC


