如何写这个 mysql语句

select code,max(date) from quote group by code;

| 06288 | 2019-09-23 |
| 06388 | 2018-01-30 |
| 06488 | 2014-05-26 |
| 06805 | 2019-09-23 |
| 06806 | 2019-09-23 |
| 06808 | 2019-09-23 |
| 06811 | 2019-09-23 |
| 06813 | 2014-05-22 |
| 06816 | 2019-09-23 |
| 06818 | 2019-09-23 |

我如何选出,每个code 组中,最大date < "2019-09-23"的code ,和它对应的max date?

也就是需要这些结果

| 06388 | 2018-01-30 |
| 06488 | 2014-05-26 |
| 06813 | 2014-05-22 |

这个表达不行
select code,max(date) from quote where max(date) < "2019-09-23" group by code;

阅读 1.7k
2 个回答

select code,max(date) from quote group by code having max(date) < "2019-09-23";

select code, max(date) from quote group by code having max(date) < '2019-09-23';

max(date)属于聚合函数, 只能用在select或者having后面, 顺序是先where过滤, 然后group分组, having过滤分组后的内容

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题