Laden...

Anzahl der Zeilen ermitteln, bei denen eine bestimmte Zelle einen bestimmten Wert hat

Erstellt von oli001 vor 10 Jahren Letzter Beitrag vor 10 Jahren 1.205 Views
O
oli001 Themenstarter:in
449 Beiträge seit 2005
vor 10 Jahren
Anzahl der Zeilen ermitteln, bei denen eine bestimmte Zelle einen bestimmten Wert hat

Hi,

ich habe eine Tabelle mit Daten aus der ich die Anzahl der Zeilen angezeigt bekommen möchte, wenn in einen bestimmten Zelle ein bestimmter Wert angezeigt wird.

z.B

Auto: 500
LKW: 130

gibt's irgendwas in der Art wie defaultView.ToTable mit nem Count dabei?
Möcht´s ungern über ne Schleife lösen...

Grüße Oli

Viele Grüße, Oli

R
212 Beiträge seit 2012
vor 10 Jahren

Recht easy

Datagridview.Rows.Count

O
oli001 Themenstarter:in
449 Beiträge seit 2005
vor 10 Jahren

Nee...

ich will die die Anzahl der Zellen in Abhänigkeit des Inhaltes. Also wie ein Group By bei einer SQL-Abfrage...

Grüße Oli

Viele Grüße, Oli

T
156 Beiträge seit 2012
vor 10 Jahren

Hallo oli001,

fürchte da wirst du nicht um eine Schleife herumkommen.
Denkbar ist alle Ausprägungen zu sammeln und (eben in einer Schleife) jeweils über den DefaultView-Filter die Anzahl zu ermitteln.

Viele Grüße,
telfa

49.485 Beiträge seit 2005
vor 10 Jahren

Hallo oli001,

ermittle die Zahlen nicht auf dem DataGridView sondern auf den eigentlichen Daten (==> Trennung von GUI und Daten). Das sollte auf jeder halbwegs passenden Datenstruktur z.B. mit LINQ möglich sein.

Bitte beachte vor Nachfragen vorsorglich [Hinweis] Wie poste ich richtig? Punkt 1.1.1 und 1.1.

herbivore

O
oli001 Themenstarter:in
449 Beiträge seit 2005
vor 10 Jahren

Hallo Herbivore,

naja dgv war ja auch etwas schlecht ausgedrückt. ich wollte das schon über die Funktionen des Default-View lösen. Das hat ja nix mit der GUI zu tun...

Grüße Oli

Viele Grüße, Oli

P
48 Beiträge seit 2005
vor 10 Jahren

Wie formulierst Du Deine Abfragen?
Wie ist die Datenstruktur?

Warum nicht mit COUNT() lösen?

in LINQ

int numCars = (from v in context.vehicles where v.type == "Auto" select v).Count();

int numTrucks = (from v in context.vehicles where v.type == "LKW" select v).Count();

oder mit GroupBy

var query = from v in context.vehicles group p by p.type into vt
  select new
  {
     type = vt.type,
     typeCount = vt.Count()
  };

(Aus dem Kopf, ich hoffe es funktioniert so)

Oder steh ich auf dem Schlauch?

--
mfG.
Marcel Eckhoff