AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Fehler in der Formel
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler in der Formel

Ein Thema von cugar · begonnen am 11. Jan 2007 · letzter Beitrag vom 11. Jan 2007
Antwort Antwort
cugar

Registriert seit: 6. Jan 2007
149 Beiträge
 
Delphi XE Professional
 
#1

Fehler in der Formel

  Alt 11. Jan 2007, 07:49
Datenbank: InterBase • Version: 7.5 • Zugriff über: Delphi
Moin, moin!
Mein SQL wird gerade fleißig geübt, was ist bitte in der Formel falsch?

select SUM("RECH_DETAIL"."Preis_NETTO") AS "SUMME","RECHNUNG"."KD_ID" FROM RECHNUNG,RECH_DETAIL
WHERE "RECHNUNG"."Re_Nr"="RECH_DETAIL"."ID"
GROUP BY "RECH_DETAIL"."Re_ID"

Nehme ich "RECHNUNG"."KD_ID" raus ist alles ok, mit "RECHNUNG"."KD_ID" gibt's eine Fehlermeldung:

"Error at line 1
Dynamic SQL Error
SQL error code = -104
invalid column reference"

Viele Dank!
cugar
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler in der Formel

  Alt 11. Jan 2007, 07:52
Jedes Feld in der Anzeigeliste muß entweder ein Aggregat sein oder Teil der Gruppierungsbedingung sein.
Markus Kinzler
  Mit Zitat antworten Zitat
cugar

Registriert seit: 6. Jan 2007
149 Beiträge
 
Delphi XE Professional
 
#3

Re: Fehler in der Formel

  Alt 11. Jan 2007, 07:58
Danke für die rasche Antwort!
Wie kann ich dann es lösen?
Es ist so:

In der DBGrid sollen alle Rechnungen angezeigt werden mit RechNr,Kd_Nr usw. und dazu die Summe aller Preise in der Tabelle: RechnungsDetails Feld: "Preis_NETTO"
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler in der Formel

  Alt 11. Jan 2007, 08:01
Entweder

SQL-Code:
select SUM("RECH_DETAIL"."Preis_NETTO") AS "SUMME","RECHNUNG"."KD_ID", MIN( "RECHNUNG"."Re_Nr") as "Re_Nr" FROM RECHNUNG,RECH_DETAIL
WHERE "RECHNUNG"."Re_Nr"="RECH_DETAIL"."ID"
GROUP BY "RECH_DETAIL"."Re_ID"
oder

SQL-Code:
select SUM("RECH_DETAIL"."Preis_NETTO") AS "SUMME","RECHNUNG"."KD_ID" FROM RECHNUNG,RECH_DETAIL
WHERE "RECHNUNG"."Re_Nr"="RECH_DETAIL"."ID"
GROUP BY "RECH_DETAIL"."Re_ID", "RECHNUNG"."Re_Nr"
Markus Kinzler
  Mit Zitat antworten Zitat
cugar

Registriert seit: 6. Jan 2007
149 Beiträge
 
Delphi XE Professional
 
#5

Re: Fehler in der Formel

  Alt 11. Jan 2007, 08:07
Leider nicht, in beiden gibt's die selbe Fehlermeldung, nehme ich "RECHNUNG"."KD_ID" raus ist alles ok
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler in der Formel

  Alt 11. Jan 2007, 08:14
Es hätte eher so
SQL-Code:
select SUM("RECH_DETAIL"."Preis_NETTO") AS "SUMME", MIN("RECHNUNG"."KD_ID") as "KD_ID" FROM RECHNUNG, RECH_DETAIL
WHERE "RECHNUNG"."Re_Nr"="RECH_DETAIL"."ID"
GROUP BY "RECH_DETAIL"."Re_ID"
lauten müßen.

Man könnte auch einen expliziten join nehmen:

SQL-Code:
select
    SUM(d."Preis_NETTO") AS "SUMME",
    MIN(r."KD_ID") as "KD_ID"
FROM
    RECH_DETAIL d join RECHNUNG r on r."Re_Nr"=d."ID"
GROUP BY
    d."Re_ID"
Markus Kinzler
  Mit Zitat antworten Zitat
cugar

Registriert seit: 6. Jan 2007
149 Beiträge
 
Delphi XE Professional
 
#7

Re: Fehler in der Formel

  Alt 11. Jan 2007, 08:19
Gott segne dich! PERFEKT!
Auf diese Weise kann ich die anderen Spalten mit einbeziehen!

Vielen Dank
cugar
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Fehler in der Formel

  Alt 11. Jan 2007, 08:21
Du kannst natürlich auch die felder mit in die GROUP BY aufnehmen, den ein solches Dummy-Aggregat funktioniert nicht mit allen Feldtypen.
Markus Kinzler
  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 05: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