AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Frage zum crossqry syntax fehler
Thema durchsuchen
Ansicht
Themen-Optionen

Frage zum crossqry syntax fehler

Ein Thema von d6lpz · begonnen am 3. Apr 2008 · letzter Beitrag vom 4. Apr 2008
Antwort Antwort
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#1

Frage zum crossqry syntax fehler

  Alt 3. Apr 2008, 20:28
Datenbank: Access • Version: 2k • Zugriff über: ADO
Ich habe versucht eine Qry mit einer CrossQry zu kombinieren. Leider funktioniert das irgendwie nicht.
Geht das überhaupt?

TRANSFORM First(TContent.sshort) AS FirstOfcontent
SELECT
TMainTimes.sdate,
PEmployee.srotation,
TMainTimes.spersonalId,
PEmployee.sname,
TMainTimes.sshift,
PEmployee.sworkcenter,
TContent.sshort
FROM PEmployee
INNER JOIN (TMainTimes
INNER JOIN TContent
ON TMainTimes.scontent = TContent.scontent)
ONPEmployee.spersonalId = TMainTimes.spersonalId
WHERE (((TMainTimes.sdate)
Between [datStart] And [datEnd]) AND ((PEmployee.srotation)=[ShiftName]) AND ((PEmployee.sworkcenter)=[Wc]))
GROUP BY PEmployee.sname,
PIVOT DatePart("d",[TMainTimes.sdate,]);

Es kommt die Meldung "Syntax Fehler in der Group By Klasuel"
Falls sich hier jemand durchfindet...

ich freue mich über jeden Hinweis
Dirk
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Frage zum crossqry syntax fehler

  Alt 3. Apr 2008, 20:31
Bei einer Gruppierung müssen die Felder in der Abfrageliste entweder in der Gruppierung stehen oder als Aggregat vorliegen.
Markus Kinzler
  Mit Zitat antworten Zitat
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#3

Re: Frage zum crossqry syntax fehler

  Alt 3. Apr 2008, 20:41
Zitat von mkinzler:
Bei einer Gruppierung müssen die Felder in der Abfrageliste entweder in der Gruppierung stehen oder als Aggregat vorliegen.
Sorry - aber kannst du mir etwas aufhelfen.
Wie meinst du das genau?
Dirk
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Frage zum crossqry syntax fehler

  Alt 3. Apr 2008, 20:50
Es werden ja alle Datensätze, die die gleichen Werte der gruppierten Felder zu einem Datensatz verschmolzen werden, existieren dann keine einzelnen Datensätze mehr. Du musst deshalb für die Felder, nach denen nicht gruppiert wird angeben, welche Werte für diese genommen werden sollen ( kleinster, größter, Durchschnitt, Summe, ...); man spricht hier von Aggegatsfunktionen: MIN(), MAX(), AVG(), SUM(), ...
Markus Kinzler
  Mit Zitat antworten Zitat
d6lpz

Registriert seit: 26. Mär 2008
73 Beiträge
 
Delphi 6 Professional
 
#5

Re: Frage zum crossqry syntax fehler

  Alt 4. Apr 2008, 01:05
Zitat von mkinzler:
Es werden ja alle Datensätze, die die gleichen Werte der gruppierten Felder zu einem Datensatz verschmolzen werden, existieren dann keine einzelnen Datensätze mehr. Du musst deshalb für die Felder, nach denen nicht gruppiert wird angeben, welche Werte für diese genommen werden sollen ( kleinster, größter, Durchschnitt, Summe, ...); man spricht hier von Aggegatsfunktionen: MIN(), MAX(), AVG(), SUM(), ...
Danke für deine Hinweise, es funktioniert jetzt auch.
sieht jetzt so aus:

TRANSFORM First(TContent.short) AS FirstOfcontent
SELECT TMainTimes.personalId, PEmployee.workcenter, [name]+','+[forename] AS EmplName
FROM PEmployee
INNER JOIN (TMainTimes
INNER JOIN TContent ON TMainTimes.content = TContent.content) ON PEmployee.personalId = TMainTimes.personalId
WHERE (((DatePart("m",[date],1))=:f_month)
AND ((PEmployee.rotation)=:f_rotation)
AND ((DatePart("yyyy",[date],1))=:f_year)
AND ((PEmployee.workcenter)=:f_wc))
GROUP BY TMainTimes.personalId, PEmployee.workcenter, [name]+','+[forename], PEmployee.rotation
ORDER BY PEmployee.workcenter, [name]+','+[forename]
PIVOT (DatePart("d",[date],1))

Danke nochmal
Dirk
  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 21:30 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