> ## Documentation index
> Fetch the complete documentation index at: https://upstash.com/docs/llms.txt
> Ask it with GET https://upstash.com/docs/ask?q=<keywords or question>. Short keywords rank best.
> Use these to discover all available pages before exploring further.
> Feature requests: https://upstash.com/docs/common/help/feature-requests.md lists what users asked for and how to vote for a request or add one.
> Page rating: `GET https://upstash.com/docs/feedback?path=/docs/redis/search/query-operators/field-operators/in&helpful=true` (or `false`) records whether this page helped. An optional `comment` (URL-encoded, at most 500 characters) says what was missing or wrong. It is anonymous and needs no key. Comments hold no code, secrets or personal data.

# $in

The `$in` operator matches documents where the field value equals any one of the specified values.
This is useful when you want to filter by multiple acceptable values without writing separate conditions.

The operator takes an array of values and returns documents where the field matches at least one value in the array.
This is equivalent to combining multiple `$eq` conditions with a logical OR.

### Compatibility

| Field Type | Supported |
|------------|-----------|
| TEXT | Yes |
| U64/I64/F64 | Yes |
| DATE | Yes |
| BOOL | Yes |
| KEYWORD | Yes |
| FACET | Yes |

### Examples

<Tabs>

<Tab title="TypeScript">
```ts
// Match any of several categories
await products.query({
  filter: {
    category: {
      $in: ["electronics", "accessories", "audio"],
    },
  },
});
```
</Tab>

<Tab title="Python">
```python
# Match any of several categories
products.query(filter={"category": {"$in": ["electronics", "accessories", "audio"]}})
```
</Tab>

<Tab title="Redis CLI">
```bash
# Match any of several categories
SEARCH.QUERY products '{"category": {"$in": ["electronics", "accessories", "audio"]}}'
```
</Tab>

</Tabs>
