我有一个数据库,其中包含我想根据月份安排的简报条目。我的数据库具有以下字段ID,标题,描述和日期。日期是完整日期,例如2007-02-01 15:26:02我想要的是根据相应的月份安排所有的通讯,例如我想要有这样的东西
2010年11月
通讯标题
时事通讯的标题
......直到2010年11月的通讯的所有标题都打印出来
2010年12月
通讯标题
...直到2010年11月的新闻通讯的所有标题都打印出来
等等。
请有人帮我提供能够达到这个目标的代码,或者让我知道如何去做。
答案 0 :(得分:2)
SELECT * FROM db ORDER BY MONTH(date) AS 'd' desc GROUP BY MONTH(date)
这是您正在寻找的查询,其余的是非常基本的php / sql,因此您应该能够查找指南或其他内容并应用它。
答案 1 :(得分:0)
尝试此查询:
SELECT CONCAT(MONTHNAME(date), ' ', title) as title FROM newsletter ORDER BY date desc;
然后从结果中获取“title”字段
答案 2 :(得分:0)
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format
此功能可以帮助您按照自己的意愿行事。您可以使用它来获取特定年份的新闻稿,然后按月订购。
SELECT * FROM sell_news WHERE DATE_FORMAT(news_date,'%Y')='2009'ORDER BY DATE_FORMAT(news_date,'%m')ASC
答案 3 :(得分:0)
这是属于PHP代码的显示逻辑。只要您选择按日期排序的新闻简报,您只需要一行或两行代码,当您循环并打印新闻稿标题时,“我是否已经显示该月份名称,不再显示”。告诉你按查询中的月份排序或分组的人会以错误的方式引导你。