php mysql 如何取出年份中的月份?

一张文章的表,假如今年有3个月有文章,去年有10个月有文章。
文章发表时间字段create_time:
create_time
20190320
20190319
20190318
20190220
20190219
20190218
........
20180320
20180319
20180318
20180220
20180219
20180218
如何获取每年中文章发表的月份,得到类似如下数组:
Array(2019=>array(03,02),2018=>array(03,02))

阅读 2.4k
3 个回答

这玩意不好写,至少你一个SQL是解决不了的。

有两种方案

第一种方法:

将查询出的年月进行分组,然后输出返回,然后到了PHP里面进行二次处理,然后获取对应格式。

第二种方法:

将19年作为一个查询,值获取月份,然后18年获取月份,然后使用PHP拼成两个数组。

SELECT DISTINCT month(created_time),YEAR(created_time) FROM users

这样?

select left(create_time,6) from table group by left(create_time,6);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题