後述するようにSQLクエリが出力を与えた後:私はn個確認したい。ここはどのようにSQLで前の行からの値を使用する
SELECT claim_id,person_id,service_date,readmission_in_60_days
FROM xyz WHERE person_id IN("00026cb6","021fb6bd") GROUP BY person_id,service_date
ORDER BY service_date ASC
claim_id person_id service_date readmission_in_60_days
8 021fb6bd 2015-01-01 NULL
304 021fb6bd 2015-01-05 NULL
296 021fb6bd 2015-01-06 NULL
11888 021fb6bd 2015-01-07 NULL
23928 021fb6bd 2015-01-08 NULL
265442 00026cb6 2016-07-20 NULL
518062 00026cb6 2016-09-28 NULL
579739 00026cb6 2016-10-02 NULL
特にperson_id.If差のためのn-1行service_date nとn-1 service_dateは60日未満です。n row column readmission_in_60_days = "TRUE"または "FALSE"。 SQLクエリから
所望の出力は次のようになります。あなたがEXISTS
とサブクエリを使用することができます
claim_id person_id service_date readmission_in_60_days
8 021fb6bd 2015-01-01 FALSE
304 021fb6bd 2015-01-05 TRUE
296 021fb6bd 2015-01-06 TRUE
11888 021fb6bd 2015-01-07 TRUE
23928 021fb6bd 2015-01-08 TRUE
265442 00026cb6 2016-07-20 FALSE
518062 00026cb6 2016-09-28 FALSE
579739 00026cb6 2016-10-02 TRUE
。 –
SQLの仕事はあまりありません。 MySQL変数を使用することは可能ですが、クライアントコードで行う方が簡単で速いと思います。どのような言語を使用していますか? – axiac
@axiac私はSQLではなくETLを選択します。 – Gulshan