Dynamischer Daten Import / Export

datenbank

weil Einfach - produktiver ist
Mit der Freeware Version können bis zu 10.000 Datensätze verarbeitet werden!
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
Willkommen im FlowHeater Support Forum!

Hier werden Fragen zum Umgang mit dem FlowHeater beantwortet.

THEMA: Datensätze je Gruppe zählen

Datensätze je Gruppe zählen 3 Monate 4 Tage her #2842

  • Marko
  • Markos Avatar
  • Offline
  • Senior Member
  • Beiträge: 70
Hallo Forum. Ich möchte aus einer Ms SQL Tabelle die Anzahl der Datensätze für ein Attribut zählen und das Ergebnis auf der Write-Seite in eine andere MS SQL Tabelle schreiben.

Das SQL würde folgendermaßen aussehen.
select spalte, count(*) as Anzahl from Tabelle
group by spalte

In der "Spalte" sind jedoch auch NULLs enthalten, welche im Ergebnis nicht mit aufgeführt werden sollen. Wäre toll wenn jemand ein Beispiel dazu zur Verfügung stellen könnte.

Gruß
Marko
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Datensätze je Gruppe zählen 3 Monate 4 Tage her #2843

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1099
Hallo Marko,

Sie brauchen lediglich an den SQL SELECT im SQL Server Adapter auf der READ Seite noch eine WHERE Bedingung anzuhängen, dann sollten Sie das gewünschte Ergebnis haben.

z.B.
select spalte, count(spalte) as Anzahl from Tabelle where spalte is not null group by spalte

Wenn Sie das über den FlowHeater durchführen wollen benötigen Sie 5 Heater/Funktionen
  • 1x einen Sort Heater um die Datenquelle zu sortieren, kann auch entfallen wenn Sie an den SELECT einen ORDER BY hängen
  • 1x einen GroupBy Heater um die gewünschten Datensätze zusammenzufassen
  • 1x einen If-Then-Else Heater für die Bedingung für die NULL/DBNULL Werte
  • 1x einen Filter Heater um die Datensätze mit den NULL/DBNULL Werten zu filtern
  • 1x einen Filter Heater um die Datensätze mit den NULL/DBNULL Werten zu filtern
  • 1x einen AutoID Heater mit eingeschalteter Gruppierungsfunktion

Da ist die Lösung über den SELECT oben wesentlich eleganter. Beispiele zum Filtern und Gruppieren von Daten finden Sie hier:
Daten filtern und gruppieren
Daten gruppieren und Werte über die Gruppierung summieren
gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Letzte Änderung: 3 Monate 4 Tage her von FlowHeater-Team.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Datensätze je Gruppe zählen 3 Monate 4 Tage her #2844

  • Marko
  • Markos Avatar
  • Offline
  • Senior Member
  • Beiträge: 70
Hallo Robert. Vielen Dank für deine Anleitung. Falls in der Zieldatengruppe schon Datensätze vorhanden sind, wird das Ergebnis bei den FH Aktionen (ignored) jedoch reduziert. In der Konfiguration auf der WRITE Seite habe ich angekreuzt: Insert und Vorhandene ignorieren. Ist dieses vielleicht ein Fehler da die vorhandenen ja dann nicht ignoriert werden?

Gruß
Marko
Anhang:
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Datensätze je Gruppe zählen 3 Monate 3 Tage her #2847

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1099
Hallo Marko,

so wie du es geschrieben hast bin ich davon ausgegangen, dass du lediglich die READ Seite betrachten willst um dann das Ergebnis davon in eine andere SQL Server Datenbank wegzuschreiben.

Das „ignored“ bedeutet, dass in der Zieldatenbank ein Datensatz mit dem im FlowHeater definierten Primary Key existiert. Da du hier „vorhandene Datensätze ignorieren“ gewählt hast wird der Datensatz nicht nochmal auf in der WRITE Seite angelegt.

Jetzt kommt es darauf an was du tun möchtest? Ich vermute mal es sollen die Datensätze auf der Write Seite aktualisiert und die neu berechneten Werte der READ Seite sollen auf der WRITE abgezogen bzw. aufaddiert werden?
Einmal muss du dazu auf der WRITE Seite Insert und Update aktivieren, sowie muss die Option „vorhandenen Datensätze ignorieren“ deaktiviert werden.

Dann benötigst du dazu entweder einen Lookup Heater oder aber einen SQL Heater um die bestehenden Werte vorher auszulesen um damit dann die gewünschte Berechnung durchführen zu können bevor der Datensatz aktualisiert wird.

Bevor ich jetzt weiter in die Tiefe gehe bitte etwas genauer beschreiben was du genau durchführen möchtest.
gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Datensätze je Gruppe zählen 3 Monate 3 Tage her #2849

  • Marko
  • Markos Avatar
  • Offline
  • Senior Member
  • Beiträge: 70
Hallo Robert. Alle vorhandenen Datensätze sollen in der Tabelle erhalten bleiben und das Ergebnis der Flowheater Definition hinzugefügt werden.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Datensätze je Gruppe zählen 3 Monate 3 Tage her #2851

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1099
dann muss im SQL Server Adapter auf der WRITE Seite die Option „vorhandene Datensätze ignorieren“ deaktivieren, siehe Screenshot.

So werden alle Datensätze der READ Seite an die WRITE Seite angefügt ohne die bestehenden Datensätze zu verändern.

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Moderatoren: FlowHeater-Team
Ladezeit der Seite: 0.087 Sekunden