C#-DataTable-Filter

WBOY
Freigeben: 2024-09-03 15:33:17
Original
486 Leute haben es durchsucht

C# DataTable ist ein zentrales Objekt, das für den Zugriff auf die meisten Objekte und Daten im Zusammenhang mit der Datentabelle verwendet wird. Da die Datentabelle große Datenmengen umfasst und nicht in einem organisierten Format vorliegt, muss ein Filter angewendet werden. Um die Filtereigenschaften in DataTable in Bezug auf C# zu erfüllen, ist es erforderlich, dass der Filter die Daten in einem optimierten C#-Datenbankfilter anordnet und anordnet.

Syntax:

Es gibt keine spezifische Syntax für den C#-DataTable-Filter, er nutzt jedoch die Filterfunktionen, die mit Spalten verknüpft sind, die wie folgt dargestellt werden:

dataView.RowFilter = "s_id=180";
Nach dem Login kopieren

Die mit Literalen verknüpfte DataTable-Filterfunktion wird wie folgt dargestellt:

dataView.RowFilter = "s_name = 'anu'"
Nach dem Login kopieren

Die mit Zahlenwerten verknüpfte DataTable-Filterfunktion wird wie folgt dargestellt:

dataView.RowFilter = "dt_of_brth = 1987"
Nach dem Login kopieren

Wie filtere ich DataTable in C#?

Die Filterfunktion in C# wird meistens dann verwendet, wenn die Datenmenge und die damit verbundenen Vorgänge sehr zahlreich sind. Wenn die in der DataTable vorhandenen Daten zunehmen, ist der einzige Retter in Bezug auf die Zeilen- und Spaltenfilterung der Filter in der DataTable.

Lassen Sie uns das Arbeitsmuster zum Filtern von DataTable in C# überprüfen:

  • Das Filtern von DataTables in C# ist nicht einzigartig und unterscheidet sich von anderen Arten von Filtertechniken; Dennoch kann es auf verschiedene Arten erreicht werden.
  • Zu den verschiedenen Methoden zum Filtern von DataTable gehört die Methode select(String), die die erforderliche Zeile oder Spalte auswählt und dann darauf basierend den Filter anwendet.
  • Das Filtern kann mit den logischen Operatoren Auswählen, Wo, UND, ODER, NICHT erfolgen und darüber hinaus den Wert auch dort anwenden.
  • In der Datentabelle vorhandene Datenzeilen und -spalten nutzen ebenfalls die Sortiermethode, die die Daten je nach Bedarf in einem aufsteigenden oder absteigenden Format sortiert und ordnet.
  • Das Auswählen der Zeichenfolge als aufzählbar ist beim Speichern eines beliebigen Objekts nützlich, und die anschließende Anwendung von Filter- und Sortieroperationen basierend auf der Berechnung hilft dabei, das gewünschte Ergebnis zu erzielen.
  • Die Auswertung von DataTable mit der zugehörigen Zeichenfolge muss auch im Hinblick auf die True- oder False-Rückgabefunktion berücksichtigt werden.

Beispiele für C#-DataTable-Filter

Im Folgenden finden Sie Beispiele für C#-DataTable-Filter:

Beispiel #1

Dieses Programm demonstriert das Filtern und Abrufen von Zeilendaten unter Verwendung der SELECT-Anweisung als Filteranweisung für jede AND-, OR- und NOT-Bedingung und gibt jede Zahl zurück, die größer als die genannte Zahl, jedoch kleiner als die andere Obergrenze ist, wie in gezeigt die Ausgabe.

Code:

using System;
using System.Data;
using System.Xml;
using System.Collections.Generic;
using System.Linq;
using System.Data.DataSetExtensions;
public class Data_tbl_Demo
{
public static void Main()
{
DataTable tbl_1 = new DataTable("Creation of Data for players");
tbl_1.Columns.Add(new DataColumn("Size_of_team", typeof(int)));
tbl_1.Columns.Add(new DataColumn("Team_work", typeof(char)));
tbl_1.Rows.Add(50, 'c');
tbl_1.Rows.Add(100, 'c');
tbl_1.Rows.Add(250, 'd');
tbl_1.Rows.Add(567, 'd');
tbl_1.Rows.Add(123, 'd');
DataRow[] rslt = tbl_1.Select("Size_of_team >= 123 AND Team_work = 'd'");
foreach (DataRow row in rslt)
{
Console.WriteLine("{0}, {1}", row[0], row[1]);
}
}
}
Nach dem Login kopieren

Ausgabe:

C#-DataTable-Filter

Beispiel #2

Dieses Programm wird verwendet, um den DataTable-Filterausdruck zu demonstrieren, der verwendet wird, um ein Array von DataRow-Objekten nach der Sortierung in absteigender Reihenfolge zurückzugeben, wie in der Ausgabe gezeigt.

Code:

using System;
using System.Data;
using System.Xml;
using System.Collections.Generic;
using System.Linq;
using System.Data.DataSetExtensions;
public class Data_tbl_Demo
{
public static void Main()
{
DataTable tbl2_2 = new DataTable("Orders_plcd");
tbl2_2.Columns.Add("Order_ID", typeof(Int32));
tbl2_2.Columns.Add("Order_Quantity", typeof(Int32));
tbl2_2.Columns.Add("Company_Name", typeof(string));
tbl2_2.Columns.Add("Date_on_day", typeof(DateTime));
DataRow nw_row = tbl2_2.NewRow();
nw_row["Order_ID"] = 1;
nw_row["Order_Quantity"] = 5;
nw_row["Company_Name"] = "New_Company_Nm";
nw_row["Date_on_day"] = "2014, 5, 25";
tbl2_2.Rows.Add(nw_row);
DataRow nw_row2 = tbl2_2.NewRow();
nw_row2["Order_ID"] = 2;
nw_row2["Order_Quantity"] = 6;
nw_row2["Company_Name"] = "New_Company_Nm2";
tbl2_2.Rows.Add(nw_row2);
DataRow nw_row3 = tbl2_2.NewRow();
nw_row3["Order_ID"] = 3;
nw_row3["Order_Quantity"] = 8;
nw_row3["Company_Name"] = "New_Company_Nm3";
tbl2_2.Rows.Add(nw_row3);
string exprsn = "Date_on_day = '5/25/2014' or Order_ID = 2";
string sort_Order = "Company_Name DESC";
DataRow[] sorted_Rows;
sorted_Rows = tbl2_2.Select(exprsn, sort_Order);
for (int i = 0; i < sorted_Rows.Length; i++)
Console.WriteLine(sorted_Rows[i][2]);
}
}
Nach dem Login kopieren

Ausgabe:

C#-DataTable-Filter

Beispiel #3

Dieses Programm demonstriert die Auswahlabfrage, bei der die DataTable nach zwei übereinstimmenden Zeilen sucht, die Datumsangaben im neueren Format haben, und mit DateTime gefiltert wird, wie in der Ausgabe gezeigt.

Code:

using System;
using System.Data;
using System.Xml;
using System.Collections.Generic;
using System.Linq;
using System.Data.DataSetExtensions;
public class Using_Date_Time
{
public static void Main()
{
DataTable tbl_dt_time = new DataTable("Widgets");
tbl_dt_time.Columns.Add(new DataColumn("rw_ID", typeof(int)));
tbl_dt_time.Columns.Add(new DataColumn("Date", typeof(DateTime)));
tbl_dt_time.Rows.Add(180, new DateTime(2003, 1, 1));
tbl_dt_time.Rows.Add(123, new DateTime(2000,1, 1));
tbl_dt_time.Rows.Add(350, new DateTime(2001,1, 1));
DataRow[] filterd_result = tbl_dt_time.Select("Date > #6/1/2001#");
foreach (DataRow row in filterd_result)
{
Console.WriteLine(row["rw_ID"]);
}
}
}
Nach dem Login kopieren

Ausgabe:

C#-DataTable-Filter

Beispiel #4

Dieses Programm veranschaulicht einen ungültigen Ausdruck, indem es einen Wert wie A auswählt, der nicht als wahr oder falsch ausgewertet wird und einen unangenehmen Fehler auslöst, der unerwünscht ist.

Code:

using System;
using System.Data;
using System.Xml;
using System.Collections.Generic;
using System.Linq;
using System.Data.DataSetExtensions;
public class Using_Date_Time
{
public static void Main()
{
DataTable table = new DataTable();
table.Columns.Add("Anusua", typeof(int));
table.Rows.Add(1);
table.Rows.Add(2);
table.Rows.Add(3);
table.Rows.Add(4);
table.Rows.Add(5);
DataRow[] rows = table.Select("Anusua");
System.Console.WriteLine(rows.Length);
}
}
Nach dem Login kopieren

Ausgabe:

C#-DataTable-Filter

Hinweis: Um die oben beschriebene Situation der Auswertung der Datentabelle und der Filterung der Datentabelle durch Auswertung von Werten zu überwinden, beziehen Sie diese Anweisungen richtig ein.

Anweisungen enthalten Zeilen wie:

DataRow[] rows = table.Select(“Anusua > 1”);

System.Console.WriteLine(rows.Length);

Die beiden oben genannten Zeilen liefern die erforderliche Ausgabe, wenn sie ordnungsgemäß ausgeführt werden, indem die Select-Anweisung wie im zuvor genannten Beispiel ersetzt wird.

Die Ausgabe lautet:

C#-DataTable-Filter

Beispiel #5

Dieses Programm demonstriert die zu filternde Datentabelle und führt eine Summenoperation aus, die sich innerhalb des als Summe erstellten Objekts befindet. Daraus wird die erforderliche Summe ermittelt und angezeigt, wie in der Ausgabe gezeigt.

Code:

using System;
using System.Data;
using System.Xml;
using System.Collections.Generic;
using System.Linq;
using System.Data.DataSetExtensions;
public class Program
{
public static void Main()
{
DataTable dt_4 = new DataTable();
dt_4.Columns.Add("emp_Id",typeof(int));
dt_4.Columns.Add("customer_Name",typeof(string));
dt_4.Columns.Add("Amount_type",typeof(decimal));
dt_4.Rows.Add(1,"A",50);
dt_4.Rows.Add(2,"b",68);
dt_4.Rows.Add(3,"c",22);
dt_4.Rows.Add(4,"d",null);
decimal dec_ml = 0;
object sum_Obj;
sum_Obj = dt_4.Compute("Sum(Amount_type)", string.Empty);
decimal total = dt_4.AsEnumerable().Where(r => !r.IsNull("Amount_type") && decimal.TryParse(r["Amount_type"].ToString(), out dec_ml)).Sum(r => dec_ml);
Console.WriteLine(sum_Obj);
Console.WriteLine(total);
}
}
Nach dem Login kopieren

Ausgabe:

C#-DataTable-Filter

Fazit

DataTable spielt in C# und in jeder anderen Programmiersprache eine entscheidende Rolle beim Umgang mit großen Datenmengen. Auch das Filtern in Bezug auf die Datenbank und ihre nachfolgende Teilmenge spielt eine wichtige Rolle, da eine Datenbank im Hinblick auf das Abrufen und Abrufen von Daten aus einer Datenbank immer optimiert und effizient sein sollte.

Das obige ist der detaillierte Inhalt vonC#-DataTable-Filter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage