「Get Rows where」を使用する特定の値を少し下回る値を持つ行を取得するには、Get Rows Whereを使用する必要があります。
言い換えると:
私は日付Aを持っています
私は日程表を持っています。日付が最新で、日付A未満の行を取得する必要があります。
例:
人が死んだ日があります。
誰かが彼のアカウントにログインしたとき、私はすべてのイベントとのテーブルを持っています。彼の死の前後には日程があります。
彼が死ぬ前に彼がログインした最新の日付を見つける必要があります。
次の行に沿った何か
lastSelfLogin = dt<<Get Rows Where(:loginDate < deathDate & /*here goes condition that this date needs to be the last*/);
何か案は?
ありがとうございます。
再:どこで行を取得する」を使用する私はあなたがあなたの解決策を見つけたことをうれしく思います
再:どこで行を取得する」を使用するジム、
返信いただきありがとうございます。
私は私の例を与えることで少し間違っていました。 あなたのスクリプトは確かに最新の自己ログイン日を与えるでしょう。ただし、隣接する列から他の関連値を見つけるには、行数が必要になりました。
解決策は次のとおりです。
//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]];
再:どこで行を取得する」を使用するこれはそれを行います:
lastSelfLogin = Max(dt << Get Rowsの場所(:loginDate