Heim > Datenbank > MySQL-Tutorial > Wie verwende ich die IN-Klausel von Dapper ORM mit dynamisch generierten Listen?

Wie verwende ich die IN-Klausel von Dapper ORM mit dynamisch generierten Listen?

Linda Hamilton
Freigeben: 2025-01-04 21:25:41
Original
998 Leute haben es durchsucht

How to Use Dapper ORM's IN Clause with Dynamically Generated Lists?

Abfragen mit IN-Klausel und Dapper ORM

Frage:

So erstellen Sie effizient eine SQL-Abfrage mit einer IN-Klausel Verwendung von Dapper ORM, wenn die Werteliste für die IN-Klausel dynamisch aus dem Geschäft abgeleitet wird Logik?

Antwort:

Dapper ORM bietet direkte Unterstützung für dieses Szenario. So geht's:

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

In diesem Beispiel ist der Parameter ids als Array von Ganzzahlen definiert. Die durch Kommas getrennte Liste der IDs in der ursprünglichen Abfrage wird basierend auf der Geschäftslogik dynamisch erstellt und als Wert für den ID-Parameter übergeben.

Wenn Sie Postgres als Datenbank verwenden, ist eine geringfügige Änderung erforderlich, um ordnungsgemäß zu funktionieren Behandeln Sie Arrays innerhalb der IN-Klausel:

// Define a custom type to represent an array of integers
var postgresIntArray = new PostgresIntArray { Value = new[] { 1, 2, 3, 4, 5 } };

string sql = "SELECT * FROM SomeTable WHERE id IN @ids";
var results = conn.Query(sql, new { ids = postgresIntArray});
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie verwende ich die IN-Klausel von Dapper ORM mit dynamisch generierten Listen?. 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