[英]How To determine this user late pay for this week in mysql
所以在這里我有一個案例來確定這個用戶他每周是否延遲付款,以確定與付款日期和上一個逾期字段的延遲比較
我有這樣的樣本數據
Name to be paid DATE PAID OVERDUE DATE
Bakrie 195000 2019-07-01 2019-07-08
Rocky 195000 2019-07-01 2019-07-08
Bakrie 195000 2019-07-15 2019-07-22
Bakrie 195000 2019-07-29 2019-08-05
Bakrie 195000 2019-08-05 2019-08-12
Febri 130000 2019-06-25 2019-07-02
希望生成的數據
Name to be paid DATE PAID OVERDUE DATE sign
Bakrie 195000 2019-07-01 2019-07-08 NOT LATE
Rocky 195000 2019-07-01 2019-07-08 NOT LATE
Bakrie 195000 2019-07-15 2019-07-22 LATE
Bakrie 195000 2019-07-29 2019-08-05 Late
Bakrie 195000 2019-08-05 2019-08-12 not late
Febri 130000 2019-06-25 2019-07-02 not late
正如你看到的用戶名 bakrie 他延遲付款,因為在第二個付款日期支付的到期日超過了他付款的前一個記錄到期日
我試過這樣查詢但失敗了。 他這樣顯示數據不遲
Bakrie 195000 2019-07-01 2019-07-08 NOT LATE
Bakrie 195000 2019-07-01 2019-07-08 NOT LATE
Bakrie 195000 2019-07-01 2019-07-08 NOT LATE
Bakrie 195000 2019-07-01 2019-07-08 NOT LATE
Rocky 195000 2019-07-01 2019-07-08 NOT LATE
Bakrie 195000 2019-07-15 2019-07-22 LATE
我的查詢是這樣的`
select trackku.*, if(date paid > overdue_paid,'LATE','NOT LATE') from trackku
請幫我!?!?!
我根據您對問題的描述來到了以下查詢。
select
a.name, a.paid, a.date_paid, a.overdue_date,
case
when max(b.overdue_date) is null or
max(b.overdue_date) >= a.date_paid then
'not late'
else
'late'
end as sign
from trackku as a
left join trackku as b
on a.name = b.name and a.date_paid > b.date_paid
group by a.name, a.paid, a.date_paid, a.overdue_date;
輸出:
+--------+--------+------------+--------------+----------+
| name | paid | date_paid | overdue_date | sign |
+--------+--------+------------+--------------+----------+
| Bakrie | 195000 | 2019-07-01 | 2019-07-08 | not late |
| Bakrie | 195000 | 2019-07-15 | 2019-07-22 | late |
| Bakrie | 195000 | 2019-07-29 | 2019-08-05 | late |
| Bakrie | 195000 | 2019-08-05 | 2019-08-12 | not late |
| Febri | 130000 | 2019-06-25 | 2019-07-02 | not late |
| Rocky | 195000 | 2019-07-01 | 2019-07-08 | not late |
+--------+--------+------------+--------------+----------+
使用SQL Fiddle在線測試。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.