Maison >base de données >tutoriel mysql >Comment répliquer l'instruction « IN » de SQL à l'aide de la méthode Contains() de LINQ ?

Comment répliquer l'instruction « IN » de SQL à l'aide de la méthode Contains() de LINQ ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-30 17:52:10196parcourir

How to Replicate SQL's

Version Linq de l'instruction SQL "IN"

En SQL, l'instruction "IN" est couramment utilisée pour interroger des données basées sur une liste de valeurs. Dans LINQ, il existe plusieurs façons d'obtenir des fonctionnalités similaires, notamment en utilisant la méthode Contains().

Pour écrire une requête LINQ qui correspond à des éléments basés sur une liste de balises à l'aide de la méthode Contains(), on peut utiliser l'approche suivante :

Définissez un tableau ou une liste des ID de balise souhaités :

var TagIds = new int[] {2, 3, 4, 7};

Créez une requête qui sélectionne les éléments qui correspondent les ID de balise spécifiés :

var q = from map in Context.TagMaps 
        where TagIds.Contains(map.TagId)
        select map.Items;

Dans cette requête, la méthode Contains() est utilisée pour vérifier si le TagId de la ligne actuelle de la table TagMap est inclus dans le tableau TagIds. Si elle est incluse, la ligne correspondante dans la table Items est sélectionnée.

La requête résultante générera une clause "IN (12, 32, 42)" dans l'instruction SQL qui est exécutée sur la base de données, efficacement filtrer les résultats en fonction des ID de balise spécifiés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn