我正在处理电信数据。所以基本上我有手机号码,并且我需要一个具有以下条件的标志(是/否)。
如果是,则标记为“是”
样本数据
Mobile Number Invoice_Month Total_Minutes_Used Total_Data_Usage_MB
------------- -------------- ------------------ -------------------
9112222210 01-2019 0 0
9112222210 02-2019 0 0
9112222210 03-2019 0 45
9112222210 04-2019 0 0
9112222211 01-2019 0 0
9112222211 02-2019 0 0
9112222211 03-2019 0 0
9112222211 04-2019 0 0
9112222212 01-2019 0 0
9112222212 02-2019 0 0
9112222212 03-2019 0 0
9112222212 04-2019 0 50
预期产量
Mobile Number Invoice_Month Total_Minutes_Used Total_Data_Usage_MB Flag
------------- -------------- ------------------ ------------------- ----
9112222210 01-2019 0 0 N
9112222210 02-2019 0 0 N
9112222210 03-2019 0 45 N
9112222210 04-2019 0 0 N
9112222211 01-2019 0 0 N
9112222211 02-2019 0 0 N
9112222211 03-2019 0 0 Y
9112222211 04-2019 0 0 Y
9112222212 01-2019 0 0 N
9112222212 02-2019 0 0 N
9112222212 03-2019 0 0 N
9112222212 04-2019 0 50 N
我在LEAD和LAG上进行了尝试,但无法正常工作。
答案 0 :(得分:0)
您可以尝试
select *,
case when Invoice_Month <= DATEADD(mm, -3, GETDATE()) AND
Total_Minutes_Used=0 AND
Total_Data_Usage_MB=0 AND
Total_Minutes_Used=0 OR Total_Data_Usage_MB=0 THEN "YES"
ELSE "NO"
END AS FLAG
FROM TABLE_NAME;