Heim > Datenbank > MySQL-Tutorial > Wie repliziere ich die „IN'-Anweisung von SQL mit der Methode „Contains()' von LINQ?

Wie repliziere ich die „IN'-Anweisung von SQL mit der Methode „Contains()' von LINQ?

Patricia Arquette
Freigeben: 2024-12-30 17:52:10
Original
169 Leute haben es durchsucht

How to Replicate SQL's

Linq-Version der SQL „IN“-Anweisung

In SQL wird die „IN“-Anweisung häufig zum Abfragen von Daten basierend auf einer Liste verwendet von Werten. In LINQ gibt es mehrere Möglichkeiten, ähnliche Funktionen zu erreichen, einschließlich der Verwendung der Methode „Contains()“.

Um eine LINQ-Abfrage zu schreiben, die Elemente basierend auf einer Liste von Tags übereinstimmt, kann die Methode „Contains()“ verwendet werden Der folgende Ansatz:

Definieren Sie ein Array oder eine Liste der gewünschten Tag-IDs:

var TagIds = new int[] {2, 3, 4, 7};
Nach dem Login kopieren

Erstellen Sie eine Abfrage, die die Elemente auswählt, die mit den angegebenen übereinstimmen Tag-IDs:

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

In dieser Abfrage wird die Methode „Contains()“ verwendet, um zu prüfen, ob die TagId der aktuellen Zeile in der TagMap-Tabelle im TagIds-Array enthalten ist. Wenn es enthalten ist, wird die entsprechende Zeile in der Artikeltabelle ausgewählt.

Die resultierende Abfrage generiert eine „IN (12, 32, 42)“-Klausel in der SQL-Anweisung, die effizient für die Datenbank ausgeführt wird Filtern der Ergebnisse basierend auf den angegebenen Tag-IDs.

Das obige ist der detaillierte Inhalt vonWie repliziere ich die „IN'-Anweisung von SQL mit der Methode „Contains()' von LINQ?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage