

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# \$1setIsSubset
<a name="setIsSubset"></a>

L'`$setIsSubset`opérateur dans Amazon DocumentDB est utilisé pour déterminer si un ensemble de valeurs est un sous-ensemble d'un autre ensemble. Il est utile pour effectuer des comparaisons basées sur des ensembles et des opérations sur des champs de tableau.

**Paramètres**
+ `field`: Le champ auquel appliquer l'`$setIsSubset`opérateur.
+ `set`: L'ensemble avec lequel comparer le champ.

## Exemple (MongoDB Shell)
<a name="setIsSubset-examples"></a>

L'exemple suivant montre comment utiliser l'`$setIsSubset`opérateur pour vérifier si le `tags` champ est un sous-ensemble de l'ensemble spécifié.

**Création d'exemples de documents**

```
db.products.insertMany([
  { _id: 1, name: "Product A", tags: ["tag1", "tag2", "tag3"] },
  { _id: 2, name: "Product B", tags: ["tag1", "tag2"] },
  { _id: 3, name: "Product C", tags: ["tag2", "tag3"] }
]);
```

**Exemple de requête**

```
db.products.find({
  $expr: { $setIsSubset: [["tag1", "tag2"], "$tags"] }
})
```

\$1Remarque :\$1 `$setIsSubset` est un opérateur d'agrégation qui ne peut pas être utilisé directement dans les requêtes find (). Dans cet exemple, `$expr` est utilisé pour combler le fossé entre les opérateurs de requête et les expressions d'agrégation. `find()`

**Sortie**

```
[
  { "_id" : 1, "name" : "Product A", "tags" : [ "tag1", "tag2", "tag3" ] },
  { "_id" : 2, "name" : "Product B", "tags" : [ "tag1", "tag2" ] }
]
```

La requête renvoie les documents dont le `tags` champ est un sous-ensemble de l'ensemble`[&quot;tag1&quot;, &quot;tag2&quot;]`.

## Exemples de code
<a name="setIsSubset-code"></a>

Pour afficher un exemple de code relatif à l'utilisation de la `$setIsSubset` commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :

------
#### [ Node.js ]

```
const { MongoClient } = require('mongodb');

async function example() {
  const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false');
  const db = client.db('test');
  const collection = db.collection('products');

  const result = await collection.find({
    $expr: { $setIsSubset: [["tag1", "tag2"], "$tags"] }
  }).toArray();

  console.log(result);

  await client.close();
}

example();
```

------
#### [ Python ]

```
from pymongo import MongoClient

def example():
    client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false')
    db = client['test']
    collection = db['products']

    result = list(collection.find({
        '$expr': {'$setIsSubset': [['tag1', 'tag2'], '$tags']}
    }))

    print(result)

    client.close()

example()
```

------