![]() |
Datenbank: Absolute Database • Version: 5.13 • Zugriff über: Komponenten
SUM() über mehrere Tabellen
Hallo zusammen,
... und schon wieder habe ich zu meiner (einfachen) Frage keine Lösung. Helft mir bitte auf die sprünge :-) Ich möchte ganz einfach alle Datensatz von meheren Tabellen zusammenzählen. Sämtliche Versuche meinerseits mittels sum() und count() sind leider fehlgeschlagen :-( SCRaT |
Re: SUM() über mehrere Tabellen
Und was spricht dagegen das Clientseitig durchzuführen?
|
Re: SUM() über mehrere Tabellen
SQL-Code:
Wenn die Tabellen 1 und 2 die gleiche Struktur haben, dann ist dein Datenbankdesign fehlerhaft. :warn:
SELECT SUM(anzahl) AS AnzahlTotal FROM
( SELECT SUM(Feld1) AS Anzahl FROM Tabelle1 UNION ALL SELECT SUM(Feld2) AS Anzahl FROM Tabelle2 ) |
Re: SUM() über mehrere Tabellen
Wie sehen die Tabellen bzw das gewünschte Ergebnis aus?
|
Re: SUM() über mehrere Tabellen
Hallo und vielen Dank für die Vorschläge!
Zitat:
Recht - so hatte ich es bisher auch gelöst :-) Zitat:
Nochmals Dickes :cheers: Man liest sich, SCRaT |
Re: SUM() über mehrere Tabellen
Zitat:
|
Re: SUM() über mehrere Tabellen
Wenn die tabellen in der Struktur auch nicht komplett übereinstimmen, sondern nur zum teil könnte man versuchen Gleiches zusammenzufassen.
|
Re: SUM() über mehrere Tabellen
Zitat:
Zitat:
Grüsse, SCRaT |
Re: SUM() über mehrere Tabellen
Es ging mir nicht umd die Redundanz, sondern die ähnliche Struktur
z.B. Tabelle1 A, B, C Tabelle2 B, C, D Tabelle3 C, D, E -> Tabelle A, B, C, D, E oder Tabelle1 A, B, C, D Tabelle2 A, B, C, E Tabelle3 A, B, C, F -> Tabelle A, B, C Tabelle1 TID, D Tabelle2 TID, E Tabelle3 TID, F |
Re: SUM() über mehrere Tabellen
...Also jede DB sollte eine einigermaßen performante Funktion haben, um die Anzahl der Datensätze in einer Tabelle zu ermitteln, bzw. die Anzahl ständig mitkeschen... :gruebel:
@mkinzler: Er hat eine Tabelle Äpfel, eine Tabelle Birnen, und eine mit Gemüse. Er will nur wissen wie viel Obst und Gemüse er hat. Er will nicht erst Äpfel und Birnen mit dem Gemüse in einen Eimer schmeißen und dann zählen. |
Re: SUM() über mehrere Tabellen
Ich kannte ja seine Struktur nicht, war ja nur ein theoretischer Ansatz.
|
Re: SUM() über mehrere Tabellen
Er hat ja schon zweimal gesagt, er will deinen theoretischen Ansatz nicht, also geh weg! :mrgreen: :duck:
</humor> |
Re: SUM() über mehrere Tabellen
@scrat1979: Hiermit entschuldige ich mich für mein dummes Besserwissen.
|
Re: SUM() über mehrere Tabellen
Zitat:
Zitat:
Zurück um Topic: Es handelt sich bei den Tabellen sozusagen um Master->Detail Tabellen (1 Patient = x Diagnosen, Pro Diagnose wiederum X Bilder). Gibt es da eine sinnvolle Möglichkeit alles in eine Tabelle zu schreiben? IMHO müsste man doch bei der 6. Diagnose eines Patienten wiederum Vorname, Nachname etc. in den Datensatz speichern (und die x Bilder pro Diagnose sind da ja noch gar nicht dabei). Hatte mal was von atomarer Tabellenstruktur gelesen (hoffe das war das Wort und der richtige Zusammenhang :-) ). Liebe Grüsse und bis morgen! SCRaT P.S.: Ein Post meiner Tabellenstrukturen folgt morgen :twisted: |
Re: SUM() über mehrere Tabellen
Mein letzter Beitrag war auch eher ironisch gemeint
|
Re: SUM() über mehrere Tabellen
Die Gesamtanzahl der Datensätze aller 3 Tabellen sollte sich doch mit folgender Abfrage ermitteln lassen:
SQL-Code:
Gruß Daddy
Select (count (*) + (Select Count (*) from Table2) + (Select Count (*) from Table3)) as GesamtAnzahl from Table1
|
Re: SUM() über mehrere Tabellen
Zitat:
|
Re: SUM() über mehrere Tabellen
Ich würde mal sagen, wenn du keine WHERE-Klausel dazutust, also einfach das von daddy probierst, wird die datenbank so intelligent sein, und nicht den kompletten index durchlaufen.
|
Re: SUM() über mehrere Tabellen
Jedenfalls kann ich bei MS SQL-Server (2000) und Oracle (8) sagen das bei zu schwachbrüstigen Rechner (verglichen mit DB-Größe) eine SELECT Count(*) from <TabellenName> schon mal 'ne Minute dauern kann.
|
Re: SUM() über mehrere Tabellen
...das enttäuscht mich. Ein einfaches Int64 pro Tabelle zu speichern und bei Bedarf zu inkrementieren wär ja nicht so schwer (vor allem wenn man sql-intern sowieso die affected rows vorhält).
|
Re: SUM() über mehrere Tabellen
Hat mich auch enttäuscht. Aber dies müsste ja auch im Rahmen von Transaktionen gepflegt werden ...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:32 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 by Thomas Breitkreuz