Hallo,
ich versuche folgende Query, um mir die Projektnummern
anzeigen zu lassen, die in einem Intervall, von heute zurückgerechnet, verwendet wurden:SELECT pid, pname, name, pnr, max( datum ) AS 'maxdatum'
Wofür sind die Anführungsstriche da?
FROM stunden, projektnr, kunden
WHERE pid = projektnr.id AND
kid = kunden.id AND
Das ist ein Join.
close = 0 AND
Das ist eine Bedingung, welche die gejointe Datensatzgruppe einschränkt.
'maxdatum' > ( date_sub( current_date, INTERVAL 1 DAY ) )
Das ist eine Bedingung, welche die gruppierte Datensatzgruppe einschrnke soll. Das geht hier noch nicht.
GROUP BY pid
Hier wird nämlich erst gruppiert.
ORDER BY maxdatum
SELECT pid, pname, name, pnr, max(datum) AS maxdatum
FROM stunden, projektnr, kunden
WHERE pid = projektnr.id AND
kid = kunden.id AND
close = 0
GROUP BY pid
HAVING maxdatum > (date_sub(current_date, INTERVAL 1 DAY))
ORDER BY maxdatum
Davon abgesehen, würde ich die Joins auch als INNER JOIN schreiben. Um das zu zeigen, fehlen mir aber Informationen zur Tabellenstruktr.
viele Grüße
Axel