AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

SQL Summierung

Ein Thema von Sigi55 · begonnen am 22. Aug 2015 · letzter Beitrag vom 23. Aug 2015
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

AW: SQL Summierung

  Alt 22. Aug 2015, 21:22
Man könnte die Aufgabe auch so beschreiben:
Zitat:
Hole mir alle Aufträge, bei denen heute eine Zahlung eingegangen ist und teile mir von diesen Aufträgen den Saldo mit.
Mit dieser Beschreibung hat man auch schon den ersten Schritt zur Lösung
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Sigi55

Registriert seit: 3. Jan 2010
36 Beiträge
 
Delphi 5 Professional
 
#2

AW: SQL Summierung

  Alt 22. Aug 2015, 21:29
Man könnte die Aufgabe auch so beschreiben:
Zitat:
Hole mir alle Aufträge, bei denen heute eine Zahlung eingegangen ist und teile mir von diesen Aufträgen den Saldo mit.
Mit dieser Beschreibung hat man auch schon den ersten Schritt zur Lösung
Bingo !! Endlich bringt es mal jemand auf den Punkt

Mit dem Codebeispiel wollte ich nur zeigen auf welchem Weg ich bin und wie weit ...

cu

Sigi
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: SQL Summierung

  Alt 22. Aug 2015, 21:47
Aufträge mit einer Zahlung an dem Tag datum
SQL-Code:
select distinct fsanr
from tbl_zahlungen
where ratendatum = :datum
Saldo aller Aufträge
SQL-Code:
SELECT
  fsanr,
  sum(ratenwert) as SummeZahlungen,
  count(ratendatum) as Anzahl
FROM tbl_zahlungen
GROUP BY fsanr
Und jetzt alles zusammen:
SQL-Code:
select
  a.anr,
  a.a_name,
  Saldo.SummeZahlungen,
  Saldo.Anzahl
from tbl_auftrag1 as a
join (
  SELECT
    fsanr,
    sum(ratenwert) as SummeZahlungen,
    count(ratendatum) as Anzahl
  FROM tbl_zahlungen
  GROUP BY fsanr ) as Saldo on Saldo.fsanr = a.anr
where a.anr in (
  select distinct fsanr
  from tbl_zahlungen
  where ratendatum = :datum )
Und hier nochmal vereinfacht zum herumspielen
http://sqlfiddle.com/#!3/d66ab/3
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (23. Aug 2015 um 08:23 Uhr)
  Mit Zitat antworten Zitat
Sigi55

Registriert seit: 3. Jan 2010
36 Beiträge
 
Delphi 5 Professional
 
#4

AW: SQL Summierung

  Alt 23. Aug 2015, 08:21
Wow, yes, SIR!

hab mir das schon gedacht, das da irgenwie ein SubSelect dazu muss ...

Und jetzt alles zusammen:
SQL-Code:
select
  a.anr,
  a.a_name,
  Saldo.SummeZahlungen,
  Saldo.Anzahl
from tbl_auftrag1 as a
join (
  SELECT
    fsanr,
    sum(ratenwert) as SummeZahlungen,
    count(ratendatum) as Anzahl
  FROM tbl_zahlungen
  GROUP BY fsanr ) as Saldo on Saldo.fsanr = a.anr
where a.anr in (
  select distinct anr
  from tbl_zahlungen
  where ratendatum = :datum )
...nur hat mich das Beispiel schon wieder leicht an den Rand des Wahnsinns gebracht - es liefert ALLE Zeilen ?!
Und dann hab ich mir das Konstrukt mal Wort für Wort angeschaut und in

SQL-Code:
...
where a.anr in (
  select distinct [B]fsanr[/B]
  from tbl_zahlungen
  where ratendatum = :datum )
[/QUOTE]
geändert ... und BINGO, jetzt passt es !!

Aber das war bestimmt Absicht, um mich etwas auf Drehzahl zu bringen

1000 Dank nochmal !!

Gruß

Sigi
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: SQL Summierung

  Alt 23. Aug 2015, 08:25
Nee, war nur so ein Vertipper, ich hab das einfach nur so dahingeschrieben ohne Evaluierung. Ist im Beitrag jetzt auch korrigiert.

Im Fiddle-Link ist es korrekt gewesen
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Sigi55

Registriert seit: 3. Jan 2010
36 Beiträge
 
Delphi 5 Professional
 
#6

AW: SQL Summierung

  Alt 23. Aug 2015, 08:39
Moin SIR,

war dieser "Fiddle-Link" gestern auch schon da?
Wenn ja, hab ich den komplett übersehen ...
Der Vertipper war aber nicht schlecht ..., zwingt einen genauer
hinzusehen

Vielen Dank nochmal ...

Gruß

Sigi
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz