我在努力为这个数字找出正确的mysql查询...Mysql查询SELECT DISTINCT月/年
我有一个名为'blog'的表格,里面有博客条目。每个条目都有一个名为'created'的日期时间列(YYYY-MM-DD HH:MM:SS)。我想在我的页面的侧边栏中列出所有不同的月份,其中写入了一个条目,以便用户可以轻松地从博客存档中找到较早的条目。
我有一个用户定义的函数,我的BlogEntry类用来查询数据库。基于查询,它返回一组记录。例如...
$entries = BlogEntry::find_by_sql("SELECT * FROM blog ORDER BY created DESC");
我可以使用什么查询来只返回记录条目的不同月份?
我试过几件事情(有没有运气),如:
$months = BlogEntry::find_by_sql("SELECT DISTINCT MONTH(created) FROM blog");
如何返回不同的几个月和几年将不胜感激任何意见或建议!
更新: 也许我的问题是如何显示返回的记录。我一直在尝试以下...
<ul>
<?php foreach($months as $month): ?>
<li><?php echo $month->created; ?></li>
<?php endforeach; ?>
</ul>
我知道这看起来不正确。我怎么能把它列入月份 - YYYY?
见我的回答的更新:现在在查询输出的格式应该是你的愿望是什么? – aleroot