SQL查询每月最新数据

SQL查询每月最新的数据,表A:amonth(时间),itemid(项目号),status(进度)
若同一个项目在每月都有更新几次进度,去每月最新的一次保留


SELECT DISTINCT A.*
FROM TableA A
INNER JOIN (
  SELECT itemid, MAX(amonth) AS latest_amonth
  FROM TableA
  GROUP BY itemid
) B ON A.amonth = B.latest_amonth AND A.itemid = B.itemid 
 
SELECT DISTINCT A.*
FROM A
INNER JOIN (
  SELECT amonth, itemid, MAX(status) AS latest_status
  FROM A
  GROUP BY amonth, itemid
) B ON A.amonth = B.amonth AND A.itemid = B.itemid AND A.status = B.latest_status