Php 每月选择一行

Php 每月选择一行,php,mysql,sql,Php,Mysql,Sql,我是MySQL的新手,我正在尝试为表中的每个月和年份选择一行。 我正在创建一个博客网站,需要重复几个月的内容,这样人们就可以按一年中的特定月份,并在那个月获得所有的博客帖子 这是我开始做的,但它不起作用 $query = "SELECT * FROM messages WHERE date in (select DISTINCT max(date) from messages

我是MySQL的新手,我正在尝试为表中的每个月和年份选择一行。 我正在创建一个博客网站,需要重复几个月的内容,这样人们就可以按一年中的特定月份,并在那个月获得所有的博客帖子

这是我开始做的,但它不起作用

$query = "SELECT * FROM messages 
                    WHERE date in 
                    (select DISTINCT max(date) from messages 
                    GROUP BY YEAR(date), MONTH(date))";

谢谢

无需再选择:

SELECT MONTH(date), YEAR(date)
FROM messages
GROUP BY MONTH(date), YEAR(date)
这将给你每年/每月的组合,其中有一条信息列在你的表中

然后,您可以稍后使用

SELECT *
FROM messages
WHERE MONTH(date) = $selected_month AND YEAR(date) = $selected_year