Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL (SUMME) (https://www.delphipraxis.net/37746-sql-summe.html)

Klaus D. 9. Jan 2005 18:05


SQL (SUMME)
 
Ich noch mal. :gruebel:
ist es möglich auch noch die Summe aller im Feld'GESAMT' errechneter Werte mit auszugeben?
Code:
SELECT RE.Arbeitsdatum_Von
      ,RE.Arbeitsdatum
      ,RE.Rechnung_Nr
      ,RE.Man_Leistung
      ,RE.Man_Leistung_Memo
      ,RE.Zeit
      ,RE.Preis
      ,LE.Leistung
      ,(RE.Zeit * RE.Preis) as Gesamt
FROM  tbl_Rechnung RE
     
Inner JOIN  tbl_Leistung LE
        ON  RE.SID_Leistung = LE.ID
       

     WHERE  RE.SID_Rechnung_NR =:ID

fkerber 9. Jan 2005 18:43

Re: SQL (SUMME)
 
Hi!

Hast du mal nach SUM geschaut?


Ciao Frederic

Klaus D. 9. Jan 2005 18:52

Re: SQL (SUMME)
 
habe ich

geht denn folgende idee?
Code:
 ,(RE.Zeit * RE.Preis) as Gesamt
 ,SUM(gesamt)as Summe
wenn ich mit 'SUM' arbeite geht das denn ohne GROUP BY.

das liebste wäre mir ja wenn die Summe am Ende der Tabelle angehängt würde.
die Summe soll halt nur einmal in der Tabelle auftauchen.
MfG..Klaus

jensw_2000 9. Jan 2005 18:58

Re: SQL (SUMME)
 
Dann wird jetzt wirklich Zeit, das du uns verrätst auf welchem Datenbanksysten die Anfrage läuft :roll:


z.B. beim MSSQL / MSDE würde es so gehen ...

SQL-Code:
SELECT RE.Arbeitsdatum_Von
      ,RE.Arbeitsdatum
      ,RE.Rechnung_Nr
      ,RE.Man_Leistung
      ,RE.Man_Leistung_Memo
      ,RE.Zeit
      ,RE.Preis
      ,LE.Leistung
      ,(RE.Zeit * RE.Preis) as Gesamt
FROM  tbl_Rechnung RE
     
Inner JOIN  tbl_Leistung LE
        ON  RE.SID_Leistung = LE.ID
       

     WHERE  RE.SID_Rechnung_NR =:ID

COMPUTE SUM (RE.Zeit * RE.Preis)
-- eveltuell auch COMPUTE SUM (gesamt) -- musst mal testen
:hi:

Klaus D. 9. Jan 2005 19:02

Re: SQL (SUMME)
 
sorry , es handelt sich um eine ADS Datenbank
COMPUTE SUM (gesamt) u.s.w. geht nicht
MfG...Klaus

jensw_2000 9. Jan 2005 19:29

Re: SQL (SUMME)
 
COMPUTE SUM scheint Avantage wirklich nicht zu unterstützen. In der KnowlabeBase von denen steht auch nichts darüber.

Dann Versuche es mal so, das sollte funktionieren ...

SQL-Code:
SELECT RE.Arbeitsdatum_Von
      ,RE.Arbeitsdatum
      ,RE.Rechnung_Nr
      ,RE.Man_Leistung
      ,RE.Man_Leistung_Memo
      ,RE.Zeit
      ,RE.Preis
      ,LE.Leistung
      ,(RE.Zeit * RE.Preis) as Gesamt
FROM  tbl_Rechnung RE
     
Inner JOIN  tbl_Leistung LE
        ON  RE.SID_Leistung = LE.ID
       

     WHERE  RE.SID_Rechnung_NR =:ID

UNION

SELECT NULL as 'Arbeitsdatum_Von',
       NULL as 'Arbeitsdatum',
       NULL as 'Rechnung_Nr',
       NULL as 'Man_Leistung',
       NULL as 'Man_Leistung_Memo',
       RE.Zeit,
       RE.Preis,
       NULL as 'Leistung',
       SUM(RE.Zeit * RE.Preis) as Gesamt

FROM  tbl_Rechnung RE
     
Inner JOIN  tbl_Leistung LE
        ON  RE.SID_Leistung = LE.ID
       

     WHERE  RE.SID_Rechnung_NR =:ID

GROUP BY RE.Zeit, RE.Preis

EDIT: Hatte das SUM übersehen ...

Klaus D. 9. Jan 2005 19:49

Re: SQL (SUMME)
 
Danke für deine Ausdauer, aber schau dir bitte mal folgende Fehlermeldung an.
hat ADS mit 'NULL' etwa auch probleme ?
Fehlermeldung
MfG...Klaus

jensw_2000 9. Jan 2005 20:16

Re: SQL (SUMME)
 
Probleme... würde ich nicht sagen, die DB ist syntaktisch etwas "Anders".

NULL as 'Rechnung_Nr' bedeutet das er eine Spalte Rechnung_Nr erstellt und diese mit dem Wert NULL - also unassigned , nicht zugewiesen - füllt

Du kannst es auch mal mit '' as 'Rechnung_Nr' (auch für die anderen Spalten) versuchen

Hast du nen SQL Handbuch von ADS ?

Muss die Summe zwingend via SQL gebildet werden ?
Wie stellst du die Abfrage in deinem Progs dar ?
Eventuell ist es sinnvoller einfach via Delphi eine Summe zu bilden, nachdem du dort deine Abfrage geöffnet hast ...

Klaus D. 9. Jan 2005 20:21

Re: SQL (SUMME)
 
Zitat:

Eventuell ist es sinnvoller einfach via Delphi eine Summe zu bilden, nachdem du dort deine Abfrage geöffnet hast ...
das habe ich auch schon gedacht.
MfG...Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:52 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