Seite 1 von 1

Einfache Summe erstellen in der Abfrage

Verfasst: Di, 07.10.2008 14:48
von whoopy84
Wer kann mir helfen ? ich möchte eine Einfache Summe erstellen damit die Datenbank im Formular und in den Bericht die Gesamtsumme berechnet sortiert nach Monat
Feldname1 MENGE
FELDNAME2 PREIS
SQL IM DER ABRAGE SELECT "Monat" AS "Monat", "Abteilung" AS "Abteilung", "Menge" AS "Menge", "Preis" AS "Preis", "Menge" * "Preis" AS "Gesamt " FROM "Verlust "
UND HIER SCHEITER MEINE EINGABE MIT SUMME
DANKE IN VORAUS

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Di, 07.10.2008 15:03
von Barlee
Hallo whoopy84,

Code: Alles auswählen

SELECT
"Monat",
SUM("Gesamt") AS "Summe_Monat"
FROM

[Deine bisheriges SQL hier rein]

GROUP BY
"Monat"

Gruß Barlee

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Di, 07.10.2008 17:47
von whoopy84
hallo barlee, danke für die schnelle antwort leider ohne erfolg

hier mein sql code für die datenbank verluste :

SELECT
"Monat",
SUM("Gesamt") AS "Summe_Monat"
FROM

SELECT "Monat" AS "Monat", "Abteilung" AS "Abteilung", "Menge" AS "Menge", "Preis" AS "Preis", "Menge" * "Preis" AS "Gesamt " FROM "Verlust "

GROUP BY
"Monat"


, syntax error , ich bekomme zwar einfache operatorenberechnungen hin (menge*preis), aber für die einzelnen zellen eine gesamte summe nicht, da bekomme ich ständig diese fehlermeldung, wo ist mein denkfehler , vielleicht hast du noch eine andere idee gruss whoopy 84

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Di, 07.10.2008 17:57
von Barlee
Hallo whoopy84,

Deine bisherige Abfrage muss in Klammern.
Mach einmal folgendes und probiere erneut:

Code: Alles auswählen

SELECT
"Tab_A"."Monat",
SUM("Tab_A"."Gesamt") AS "Summe_Monat"
FROM
(
SELECT 
"Monat" AS "Monat", 
"Abteilung" AS "Abteilung", 
"Menge" AS "Menge", 
"Preis" AS "Preis", 
"Menge" * "Preis" AS "Gesamt " 
FROM "Verlust "
) "Tab_A"
GROUP BY
"Tab_A"."Monat"
Gruß Barlee

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Mi, 08.10.2008 07:33
von whoopy84
hallo barlee,
unter perl habe ich gelernt welche klammer ich nehmen muss[ , aber bei sql bin ich mir nicht sicher, bestimmt diese einfache ( ,habe also meine bisherige sqlcode in klammer gesetzt und deinen code dazugefügt, ohne erfolg, aber dass so am rande, auch mit dem zweiten code bin ich nicht zu dem gewünschten ergebniss gekommen,
geht es, das die berechnung noch einfacher ist, und zwar das database nur die errechnete zelle (feldname =as gesamt ) errechnet als gesamtsumme zb AS Total, ohne dass der monat berücksichtigt wird, würde ja reichen in der formularansicht, dass sortieren kann ich ja unter berichte aufbauen, (gruppierungen), Warum nimmt database die funktion summe nicht an, wäre doch ersichtlich , einen neuen feldnamen aufzubauen und dort die gewünschte summe berechnen zu lassen wie hier im beispiel Menge*Preis = Gesamt davon jetzt die totale summe der errechneten Verluste ,
hier noch mal mein code
SELECT
"Tab_A"."Monat",
SUM("Tab_A"."Gesamt") AS "Summe_Monat"
FROM
(
SELECT
"Monat" AS "Monat",
"Abteilung" AS "Abteilung",
"Menge" AS "Menge",
"Preis" AS "Preis",
"Menge" * "Preis" AS "Gesamt "
FROM "Verlust "
) "Tab_A"
GROUP BY
"Tab_A"."Monat"



(SELECT "Monat" AS "Monat", "Abteilung" AS "Abteilung", "Menge" AS "Menge", "Preis" AS "Preis", "Menge" * "Preis" AS "Gesamt " FROM "Verlust ")

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Mi, 08.10.2008 11:22
von Barlee
Hallo whoopy84,

Ich vermute, der Fehler lautet "Column not found ..." Korrekt?
Deine Abfrage vergibt für die Berechnung von Menge*Preis den Alias "Gesamt " (beachte das eingeschlossene Leerzeichen nach dem Wort)
Das äußere SELECT fragt jedoch den Spaltenbezeichner "Gesamt" (ohne Leerzeichen) ab. Da es diesen nicht gibt, kommt es zum Fehler.
Entferne also ganz einfach das Leerzeichen. Dann sollte es funktionieren.
und zwar das database nur die errechnete zelle (feldname =as gesamt ) errechnet als gesamtsumme zb AS Total, ohne dass der monat berücksichtigt wird,[
Für diesen Fall entfernst Du
- den Monat aus dem äußeren SELECT
- die GROUP BY Anweisung

Gruß Barlee

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Mi, 08.10.2008 13:18
von whoopy84
hallo barlee, fehlermeldung :column not found ist richtig,nur mit der anweisung leerzeichen komme ich nicht so ganz klar , bitte etwas detailierter , ansatz wo , welches leerzeichen soll weg, SELECT
"Tab_A"."Monat",
SUM("Tab_A"."Gesamt") AS "Summe_Monat"
FROM
(
SELECT
"Monat" AS "Monat",
"Abteilung" AS "Abteilung",
"Menge" AS "Menge",
"Preis" AS "Preis",
"Menge" * "Preis" AS "Gesamt "
FROM "Verlust "
wenn ich diesen teil entferne,
"Tab_A"
GROUP BY
"Tab_A"."Monat"
SELECT
"Tab_A"."Monat",
SUM("Tab_A"."Gesamt") AS "Summe_Monat"
FROM
und dann die ( klammer nach from entferne habe ich meine alte tabelle aber ohne ein gesamte Summe ist ja klar feld für die summe fehlt ,
sorry das ich so nerve, leider ist unser firmen rechner auf openoffices umgestellt, vorher hatten wir Access , da ging solche berechnung etwas leichter , aber ich bin ja geduldig, und hoffe das ich es hinbekomme ,gruss whoopy84

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Mi, 08.10.2008 13:33
von Barlee
Hallo whoopy84,
bitte etwas detailierter , ansatz wo , welches leerzeichen soll weg
Also nochmal zusammengefasst und im Klartext:
In Deiner Abfrage änderst Du

Code: Alles auswählen

"Menge" * "Preis" AS "Gesamt "
in

Code: Alles auswählen

"Menge" * "Preis" AS "Gesamt"
Genauso hatte ich es doch geschrieben:
"Deine Abfrage vergibt für die Berechnung von Menge*Preis den Alias "Gesamt " (beachte das eingeschlossene Leerzeichen nach dem Wort)
Das äußere SELECT fragt jedoch den Spaltenbezeichner "Gesamt" (ohne Leerzeichen) ab. Da es diesen nicht gibt, kommt es zum Fehler.
Entferne also ganz einfach das Leerzeichen. Dann sollte es funktionieren."

Gruß Barlee

Re: Einfache Summe erstellen in der Abfrage

Verfasst: Mi, 08.10.2008 14:29
von whoopy84
hallo barlee, jetzt habe ich es verstanden, die botschaft ging halt erst zum fuß , dann anschließend zum gehirn,und das ist halt eine lange strecke , also Gesamt habe ich ohne Leerzeichen gespeichert ("entfenrt) und nun klapp es mit der berechnung monat , danke für die Mühe, gruss Whoopy84