Maison >base de données >tutoriel mysql >Comment effectuer des jointures internes LINQ to SQL avec une clause ON ?

Comment effectuer des jointures internes LINQ to SQL avec une clause ON ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-21 00:43:09761parcourir

How to Perform LINQ to SQL Inner Joins with an ON Clause?

Utilisez la clause ON pour effectuer une jointure interne LINQ to SQL

LINQ to SQL fournit un moyen pratique d'effectuer des requêtes de base de données complexes en utilisant la syntaxe C# de type SQL. Les jointures internes sont une opération courante qui vous permet de combiner les données de plusieurs tables en fonction de critères de correspondance.

Pour effectuer une jointure interne à l'aide de la clause ON dans LINQ to SQL, vous pouvez utiliser la syntaxe suivante :

<code class="language-csharp">from t1 in db.Table1
join t2 in db.Table2 on t1.field equals t2.field
select new { t1.field2, t2.field3}</code>

Dans cet exemple, t1 et t2 représentent les tables à joindre, field est la colonne sur laquelle effectuer la jointure, et field2 et field3 sont les colonnes à renvoyer dans le résultat.

Exemple :

Considérez la requête SQL suivante :

<code class="language-sql">select DealerContact.*
from Dealer 
inner join DealerContact on Dealer.DealerID = DealerContact.DealerID</code>

La requête LINQ to SQL équivalente est la suivante :

<code class="language-csharp">var dealercontacts = from contact in DealerContact
                     join dealer in Dealer on contact.DealerId equals dealer.ID
                     select contact;</code>

Dans ce cas, la condition de jointure est contact.DealerId est égal à dealer.ID, ce qui garantit que seules les lignes avec les ID de revendeur correspondants sont combinées. La requête renvoie une liste d'objets DealerContact.

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