Hallo!
Ich habe eine Tabelle mit verschiedenen Snapshots für einen Kunden. Ich brauche immer den letzten Snapshot und wollte das mit einem Having lösen.
Allerdings weiss ich nicht wo bei der Abfrage im Enterprise Guide. Im Data Integrations Studio klappt's, kenne mich mit dem EG nicht so gut aus
Kann mir jemand helfen?
Danke, mir ist allerdings schon nicht klar, wie ich das Having in die Abfrage reinklicken kann - EG für Dummies sozusagen
HAVING bracuht man nur, wenn man mit Summationsfunktionen arbeitet. Sobald man eine damit erzeugte Spalte im Select hat, bietet der Abfrage-Assistent im "Daten filtern" die Option "Zusammengefasste Daten filtern" an.
zB
ich beginne mit SASHELP.CLASS, und ziehe Name und Age in "Daten auswählen". Dann wähle ich MAX als Zusammenfassung für Age, worauf ich MAX_of_Age als Spaltenname erhalte.
Jetzt kann ich in "Daten filtern" die genannte Option nutzen, MAX_of_Age dort hineinziehen, und im Pop-Up statt einem Wert (Drop-Down benutzen) die Spalte t1.Age zum Vergleich heranziehen.
Danach noch im "Daten auswählen" das "Gruppen automatisch auswählen" wegklicken und t1.Sex als Gruppe verwenden, und man bekommt diesen Code:
PROC SQL;
CREATE TABLE WORK.QUERY_FOR_CLASS AS
SELECT t1.Name,
/* MAX_of_Age */
(MAX(t1.Age)) AS MAX_of_Age
FROM SASHELP.CLASS t1
GROUP BY t1.Sex
HAVING (CALCULATED MAX_of_Age) = t1.Age;
QUIT;
Das Ergebnis sieht dann so aus:
MAX_ Name of_Age Mary 15 Janet 15 Philip 16
Vielen Dank, ich probiere es mal aus.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!