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.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.