Heim > Datenbank > MySQL-Tutorial > Wie kann ich die IN-Klausel von Dapper effizient mit IEnumerable-Werten verwenden?

Wie kann ich die IN-Klausel von Dapper effizient mit IEnumerable-Werten verwenden?

Barbara Streisand
Freigeben: 2025-01-04 06:20:40
Original
466 Leute haben es durchsucht

How Can I Efficiently Use Dapper's IN Clause with IEnumerable Values?

Abfragen einer Datenbank mit einer IN-Klausel unter Verwendung von Dapper ORM und IEnumerable Values

Das Abfragen einer Datenbank mit einer IN-Klausel ist ein häufiger Vorgang und wird bei Verwendung von Dapper ORM, es gibt eine effiziente Möglichkeit, diese Abfragen zu schreiben, wenn die Werte für die IN-Klausel aus der Geschäftslogik stammen.

Stattdessen Anstatt die Werte manuell zu einer durch Kommas getrennten Zeichenfolge zu verketten, ermöglicht Dapper die direkte Übergabe eines IEnumerable-Werts als Parameter. Beispiel: Wenn die Abfrage lautet:

SELECT * 
  FROM SomeTable 
 WHERE id IN (commaSeparatedListOfIDs)
Nach dem Login kopieren

Wobei „commaSeparatedListOfIDs“ ein IEnumerable von Ganzzahlen ist, können Sie die Abfrage mit Dapper wie folgt erstellen:

string sql = "SELECT * FROM SomeTable WHERE id IN @ids";
var results = conn.Query(sql, new { ids = new[] { 1, 2, 3, 4, 5 }});
Nach dem Login kopieren

Dapper generiert automatisch die entsprechende SQL aus der IN-Klausel und binden Sie die Werte aus dem ids-Parameter. Beachten Sie, dass bei Verwendung von PostgreSQL ein etwas anderer Ansatz erforderlich ist. Weitere Informationen finden Sie in der bereitgestellten Antwort.

Das obige ist der detaillierte Inhalt vonWie kann ich die IN-Klausel von Dapper effizient mit IEnumerable-Werten verwenden?. 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