blob: 296c6a185cb097a88b7f45d58bbb3afdc7da98aa [file] [log] [blame]
---
page_title: setintersection - Functions - Configuration Language
description: |-
The setintersection function takes multiple sets and produces a single set
containing only the elements that all of the given sets have in common.
---
# `setintersection` Function
The `setintersection` function takes multiple sets and produces a single set
containing only the elements that all of the given sets have in common.
In other words, it computes the
[intersection](https://en.wikipedia.org/wiki/Intersection_\(set_theory\)) of the sets.
```hcl
setintersection(sets...)
```
## Examples
```
> setintersection(["a", "b"], ["b", "c"], ["b", "d"])
[
"b",
]
```
The given arguments are converted to sets, so the result is also a set and
the ordering of the given elements is not preserved.
## Related Functions
* [`contains`](/language/functions/contains) tests whether a given list or set contains
a given element value.
* [`setproduct`](/language/functions/setproduct) computes the _Cartesian product_ of multiple
sets.
* [`setsubtract`](/language/functions/setsubtract) computes the _relative complement_ of two sets
* [`setunion`](/language/functions/setunion) computes the _union_ of
multiple sets.