gpt4 book ai didi

mysql - 如何使用 SQL 只选择每个组中的最新成员?

转载 作者:行者123 更新时间:2023-11-29 02:14:45 26 4
gpt4 key购买 nike

我有下表:

TABLE sales
| id | name | date | amount |
|----|------|------------|--------|
| 1 | Mike | 2016-12-05 | 67.15 |
| 2 | Mike | 2016-12-09 | 98.24 |
| 3 | John | 2016-12-12 | 12.98 |
| 4 | Mike | 2016-12-19 | 78.48 |
| 5 | Will | 2016-12-19 | 175.26 |
| 6 | John | 2016-12-22 | 14.26 |
| 7 | John | 2016-12-23 | 13.48 |

我正在尝试创建一个 View ,该 View 将按名称列分组并仅返回最反感的金额。它应该看起来像这样:

TABLE sales_view
| id | name | date | amount |
|----|------|------------|--------|
| 4 | Mike | 2016-12-19 | 78.48 |
| 5 | Will | 2016-12-19 | 175.26 |
| 7 | John | 2016-12-23 | 13.48 |

我不确定该怎么做。我想我会需要子查询,但我知道如果你试图在 View 中使用它们,SQL 会生气。

最佳答案

您可以将元组和子查询与 group by for max(date) 一起使用

 select * from sales
where (name, date) in ( select name, max(date)
from sales
group by name)

关于mysql - 如何使用 SQL 只选择每个组中的最新成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41795738/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com