AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SUM aus zwei Tablellen
Thema durchsuchen
Ansicht
Themen-Optionen

SUM aus zwei Tablellen

Ein Thema von Captnemo · begonnen am 23. Apr 2015 · letzter Beitrag vom 23. Apr 2015
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#1

SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:06
Datenbank: MySQL • Version: 5.1 • Zugriff über: SQLDirect
Hi,

ich brauch von euch mal fix ein kleine Hilfe.

Ich muss eine Summenbildung nebst Sortierung über 2 Tabellen abfragen.

Beiden Tabellen enthalten Teilweise gleiche Felder, und auch nur die sollen abgefragt werden.

Beispiel:
Code:
Tabelle1:
  Felder: Name
          Vorname
          Netto
          Lieferscheinnummer
          Rechnungsnummer

Tabelle 2:
  Felder: Firma
          Kundennummer
          Name
          Vorname
          Kosten
          Lieferkosten
          Dauer
Wie gesagt, nur ein Beispiel. Ich will jetzt beide Tabelle in einer Abfrage zusammenfassen und
Code:
SUM(Netto / Kosten)
(Also von der Tabelle1 das Feld Netto und von der Tabelle2 das Feld Kosten) mittels
Code:
Group by Name, Vorname
und ein
Code:
Order by Name, Vorname
fertig aufbereitete Daten erhalten. Die anderen Felder der beiden Tabellen werden nicht benötigt, und brauchen auch nicht berücksichtigt werden.

Ich denke schon, dass das geht. Nur weiß ich nicht wie.

Und leider habe ich nur bis 13:00 Uhr zeit, da der Kunde die Daten bis dahin benötigt.

Kann mir jemand ein kleines Beispiel dafür nennen?
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo

Geändert von Captnemo (23. Apr 2015 um 12:10 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#2

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:08
Aus der Hüfte: eine UNION beider Tabellen als Subselect bilden und davon dann die Summe errechnen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#3

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:11
Aus der Hüfte: eine UNION beider Tabellen als Subselect bilden und davon dann die Summe errechnen.
Mir ist noch aufgefallen, dass die Felder, die die Summe bilden sollen, in beiden Tabellen leider nicht gleich heißen. Geht das trotzdem?
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:14
Du musst nur dafür sorgen, dass sie gleich heissen ( Alias)
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#5

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:20
Wenn ich das z.B. so mache:
Code:
SELECT Datum, lieferant, lieferantname, Netto as Gewicht, Artikelname as Artikel FROM gm.mobilwiegedaten
where year(datum)=2015 and month(Datum)=3 
union all
Select Datum, lieferant, lieferantname, gewicht, artikel from gm.wiegungen
where year(datum)=2015 and month(Datum)=3 
order by lieferant;
Dann kriege ich nur die Zeilen des zweiten Select's. (Feldnamen sind jetzt andere, als oben).
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo

Geändert von Captnemo (23. Apr 2015 um 12:24 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:27
Sind die Typen gleich?

Entferne mal das Union und führe nur den ersten Teil der Abfrage ( mit Aliasen) aus. liefert der das gewünschte (Teil-)Ergebnis?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#7

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:38
Alles klar. Funktioniert. Vielen Dank.
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#8

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:41
Aber wie könnte ich jetzt in der Ergebnistabelle die Summenbildung machen? Wenn ich's in den einzelnen Select's mache, nützt es mir ja nichts.
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:43
Mit einer derived Table

Zitat von SQL:
select ... from ( <Union>);
Markus Kinzler
  Mit Zitat antworten Zitat
hstreicher

Registriert seit: 21. Nov 2009
220 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

AW: SUM aus zwei Tablellen

  Alt 23. Apr 2015, 12:49
sum(netto/kosten) ergibt für mich keinen Sinn

das sollte wohl sum(netto)/sum(kosten) heissen
und dann einfach

select t3.Name,t3.Vorname,(select sum(t1.netto) from tabelle1 as t1 where ??)/(select sum(t2.kosten) from tabelle2 as t2 where ??)) from Tabelle1 as t3 Group by 1,2 order by 1,2

die ?? müssen angepasst werden , z.b where t1.vorname=t3.vorname and t1.name=t3.name je nach Tabellenstruktur
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 20:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz