mysql - 请问如何找到练习被sql打断的人?
问题描述
我有一张像这样的桌子:
person_id, pe_year, exercise_keep_year
1001, 2016, 12
1001, 2018, 14
1002, 2017, 5
1002, 2018, 0
1003, 2016, 10
1003, 2017, 0
1003, 2018, 1
1003, 2019, 2
如果这个人每年都坚持锻炼,那么 pe_year-exercise_keep_year 将全部相等。(如 person_id=1001,exercise_start_year = 2016-12 = 2018-14 = 2004)
如果运动被中断,pe_year-exercise_keep_year 将不会全部相等。(如 person_id = 1003)
我想找到所有练习被打断的 person_id。请问该怎么做?
解决方案
尝试这个
select person_id from
(select person_id,count(distinct(pe_year-exercise_keep_year)) as cnt from tablename group by person_id) as a
where cnt>1
推荐阅读
- spring-boot - Swagger ui在zuul后面的时候在测试页面增加了一个/path
- angular - 模板解析错误:无法绑定到“formGroup”,因为它不是“form”的已知属性
- angular - Angular 应用程序的业务规则引擎
- css - CSS3不确定的进度条不会冻结
- python - 在 TensorFlow 中实施 CIFAR10 时遇到问题
- c# - 如何始终调用 C# 类的最新字段
- ruby-on-rails - 将 form_for 语法转换为 simple_form 语法
- html - 在父母的溢出中隐藏div?
- r - 在 R 中将本地时间戳转换为 RFC 3339 格式
- html - 如何垂直居中 div 内的无序列表?