如何在mysql查询中获取GROUP BY的最新索引?
我对获取Group by最新索引的算法和方法感到困惑。 我有一个这样的疑问如何在mysql查询中获取GROUP BY的最新索引?,mysql,group-by,record,Mysql,Group By,Record,我对获取Group by最新索引的算法和方法感到困惑。 我有一个这样的疑问 SELECT hasil_kmbg AS RESULT, EXTRACT(MONTH FROM tgl_check) AS MONTH, EXTRACT(YEAR FROM tgl_check) AS YEAR FROM perkembangan WHERE no_pasien=11 GROUP BY MONTH, id_kmbg DESC 这是
SELECT hasil_kmbg AS RESULT,
EXTRACT(MONTH
FROM tgl_check) AS MONTH,
EXTRACT(YEAR
FROM tgl_check) AS YEAR
FROM perkembangan
WHERE no_pasien=11
GROUP BY MONTH,
id_kmbg DESC
这是查询的结果
|Result|Month|Year|
-------------------
|3 |1 |2013|
|1 |1 |2013|
|5 |1 |2013|
|1 |2 |2013|
|1 |3 |2013|
and so on
问题是,我如何在第一个月得到结果是3?我不想在第1个月显示其他结果,但最新的3个月除外,我按说明订购。您每月会收到多行,因为您已将id\u kmbg包含在group by子句中。我认为您需要max函数:
select max(hasil_kmbg) as Result, EXTRACT(MONTH FROM tgl_check) as Month,
EXTRACT(YEAR FROM tgl_check) as Year
from perkembangan
where no_pasien=11
group by Month, Year;
我想你正在寻找这个:
SELECT hasil_kmbg AS RESULT,
EXTRACT(MONTH
FROM tgl_check) AS MONTH,
EXTRACT(YEAR
FROM tgl_check) AS YEAR
FROM perkembangan
WHERE no_pasien=11
ORDER BY id_kmbg DESC
LIMIT 1
我的直觉是,你不需要这里的团队,因为你是按ID DESC订购的
如果您需要一个分组依据,您可能需要修改如何选择hasil_kmbg。您成功地使它工作了吗?如果你觉得答案能解决你的问题,别忘了接受它。