Verwenden von „Zeilen wo abrufen“Ich muss Get Rows Where verwenden, um die Zeile mit einem Wert abzurufen, der knapp unter einem bestimmten Wert liegt.
Mit anderen Worten:
Ich habe ein Date A
Ich habe eine Tabelle mit Daten. Ich muss die Zeile abrufen, in der das Datum das späteste ist, aber kleiner als Datum A
Beispiel:
Ich habe ein Datum, an dem eine Person gestorben ist.
Ich habe eine Tabelle mit allen Ereignissen, wenn sich jemand in seinem Konto angemeldet hat. Es gibt Daten vor und nach seinem Tod.
Ich muss das letzte Datum herausfinden, an dem er sich vor seinem Tod angemeldet hat.
Etwas in der Art:
lastSelfLogin = dt<<Get Rows Where(:loginDate < deathDate & /*here goes condition that this date needs to be the last*/);
Irgendwelche Ideen?
Danke!
Betreff: „Get Rows Where“ verwendenIch freue mich, dass Sie Ihre Lösung gefunden haben
Betreff: „Get Rows Where“ verwendenJim,
Danke für die Antwort.
Ich habe mich mit meinem Beispiel etwas geirrt.Ihr Skript gibt tatsächlich das späteste Datum der Selbstanmeldung an. In diesem Fall benötigte ich jedoch die Anzahl der Zeilen, um andere zugehörige Werte aus benachbarten Spalten zu finden.
Die Lösung lautet wie folgt:
//Finding indices for all the logins for current person before death date
rowPerson=dt2 << Get Rows Where(:Person==thisPerson & :"DeathDate" < thisDate);
//Finding index for the latest login date
rowLatestLoginDate=Loc(loggedOn[rowPerson] == Max(loggedOn[rowPerson]));
//Then later I can access other columns. For instance, weather when person logged in himself for the last time
lastWeather=currentWeather[rowPerson[rowLatestLoginDate]];
Betreff: „Get Rows Where“ verwendenDies wird es tun:
lastSelfLogin = Max(dt<