在不同的日期和相应的值上进行分组(绘制图表)

x33g5p2x  于 2021-06-15  发布在  Mysql
关注(0)|答案(1)|浏览(254)

我想在图表上绘制一系列独特的日期和每个日期对应的值。但是,一个日期可以有多个值,但是我希望图表每个日期只显示一个值。
例如:

Jan 01: 2342
Jan 03: 2560
Jan 03: 2782
Jan 04: 2893
Jan 05: 3102

我想省略其中一项 Jan 03 日期和值,只显示此日期的一个值。
使用groupby不起作用,我需要输出两个使用groupconcat的值列表
我正在使用带有distinct的group\ U concat只选择不同的日期,但我无法将其Map到值并只选择与该日期对应的值。

SELECT 
    GROUP_CONCAT(DISTINCT date_format(date,'%e %b') order by date asc) as dates, 
    GROUP_CONCAT(balance) as balances
3b6akqbq

3b6akqbq1#

您可以将日期添加到非聚集字段并创建 GROUP BY 条款:

SELECT date_format(date,'%e %b'), GROUP_CONCAT(balance) as balances
FROM ...
GROUP BY date_format(date,'%e %b')
ORDER BY date asc

实际上,如果您的值是数字,您可能需要 AVG 取而代之的是:

SELECT date_format(date,'%e %b'), AVG(balance) as balances
FROM ...
GROUP BY date_format(date,'%e %b')
ORDER BY date asc

相关问题