mysql - 获取每个月的最后一条记录 - mysql

标签 mysql sql

在我的数据库中,我存储了每天的产品价格。

我需要基于每月最后记录的记录。

当我按月分组申请时,它给出了该月的第一条记录。

我尝试过的查询是,

select * from product where product_id = 52   
AND YEAR(date_modified) = YEAR(NOW()) GROUP BY MONTH(date_modified)

欢迎任何想法

最佳答案

有一个派生表,您可以在其中使用GROUP BY查找每个产品的每月最新日期。加入该派生表:

select * from
product t1
join (select product_id, max(date_modified) max_date_modified from product
      group by product_id, YEAR(date_modified), MONTH(date_modified)) t2
  on t1.product_id = t2.product_id and t1.date_modified = t2.max_date_modified
where product_id = 52   

关于mysql - 获取每个月的最后一条记录 - mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35331315/

相关文章:

php - mysql查询结果排序

mysql查询批量插入导致序列间隙

php - 获取每条记录的正确 'topic'

mysql - 在mysql中用null替换0

Mysql:从尝试插入中获取ID的最有效方法?

php - 检查 mysql 行是否存在不工作

php - 如何连接多个数据库,mysql中的服务器并从彼此的两个表中查询?

MySql - innodb - 复合键上的行级锁定如何用简单的话工作

sql - 优化 SQL 查询以避免哈希匹配(聚合)

sql - MySQL 查询匹配数组中的所有内容