mysql - 最高连续出现次数的总和

标签 mysql sql analytics

我有一个包含三列的表(lending_id int、installment_n serial int、status text),我想知道如何检索 WAITING_PAYMENT(状态) 的最大差距每个贷款_id。

对于以下示例:

lending_id | installment_n | status
71737   1    PAID
71737   2    PAID
71737   3    PAID
71737   4    PAID
71737   5    PAID
71737   6    WAITING_PAYMENT
71737   7    WAITING_PAYMENT
71737   8    WAITING_PAYMENT
71737   9    WAITING_PAYMENT
71737   10   WAITING_PAYMENT
71737   11   WAITING_PAYMENT
71737   12   WAITING_PAYMENT
71737   13   WAITING_PAYMENT
71737   14   WAITING_PAYMENT
71737   15   WAITING_PAYMENT
71737   16   WAITING_PAYMENT
71737   17   WAITING_PAYMENT
71737   18   WAITING_PAYMENT
71737   19   WAITING_PAYMENT
71737   20   WAITING_PAYMENT
71737   21   WAITING_PAYMENT
354226  1    PAID
354226  2    PAID
354226  3    WAITING_PAYMENT
354226  4    WAITING_PAYMENT
354226  5    WAITING_PAYMENT
354226  6    WAITING_PAYMENT
354226  7    PAID
354226  8    WAITING_PAYMENT
354226  9    WAITING_PAYMENT
354226  10   WAITING_PAYMENT
354226  11   WAITING_PAYMENT
354226  12   WAITING_PAYMENT
354226  13   WAITING_PAYMENT
354226  14   WAITING_PAYMENT
354226  15   WAITING_PAYMENT

我想知道如何检索:

lending_id | count
71737      | 16
354226     | 8

由于 71737 会考虑第 6 至 21 期 (16) 对于 354226,差距在 8 和 15 (8) 之间。

最佳答案

下面的 SQL 应该可以达到目的,并且易于阅读和理解:

select t1.lending_id, max(t1.installment_n) - min(t1.installment_n) as count
from table t1
where t1.status = 'WAITING_PAYMENT'
and t1.installment_n > 
  (SELECT max(t2.installment_n) FROM table t2 where t2.lending_id = t1.lending_id and t2.status = 'PAID')
group by lending_id;

如需任何进一步说明,请随时询问我。

特德。

关于mysql - 最高连续出现次数的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46124330/

相关文章:

mysql - 为psiturk实验配置mysql数据库

mysql - phpmyadmin上传大文件错误

json - 使用 JSON 数据从 Azure 流分析查询 Power BI 输出

Firebase:Firebase 中未显示事件属性数据

php - 使用ajax和PHP上传图像

php - 如何使用 PHP 在 MySQL 数据库中存储和检索嵌入的 YouTube?

sql - DB2 SQL : How to 'count' the amount of records returned by a having clause

sql - Microsoft SQL - 识别重复项并分配唯一标识符

mysql - SQL:在不知道总输入量的情况下跳过订单中的条目

cookies - 如何在_ga和_gid中生成第三个字段?