select count(distinct t.user)
from (
select l.user_id as 'user', l.code as 'loan', ifnull(max(DATEDIFF(ifnull(pr.repaidAt,now()),pr.payAt)),0) as 'days'
from Account a
join Loan l on l.account_id = a.id
join User u on l.user_id = u.id
left join PaymentRequest pr on pr.referredInstance_uuid = l.uuid and pr.requestType = 'cre' and pr.requestState in ('pel','pad')
where l.productType = 'per' and l.repaidAt <= '2021-12-31 23:59:59' and l.user_id not in (select user_id from Loan where repaidAt >= '2021-12-31 23:59:59' or repaidAt is null and user_id=l.user_id and createdAt <= '2021-12-31 23:59:59')
group by l.code) t
where t.days <= 90;
Need to change dates in query to syntax to get the result like this
2021.12.31 1794
2021.11.30 1805
2021.10.31 1781
2021.09.30 1761
2021.08.31 1746
2021.07.31 1732
2021.06.30 1686
2021.05.31 1659
2021.04.30 1616
2021.03.31 1591
2021.02.28 1560
2021.01.31 1533
2020.12.31 1503
2020.11.30 1461
2020.10.31 1411
2020.09.30 1397
2020.08.31 1344
2020.07.31 1310
2020.06.30 1256
2020.05.31 1255
2020.04.30 1226
2020.03.31 1204
2020.02.28 1151
2020.01.31 1091
I have a query to get one month number of returned customers. Need to change it to get data for last 2 years by every month. Could someone help me?