猿问

如何在laravel中按年份和月份对新闻或帖子进行分组

我想按年份和月份对帖子或新闻进行分组,我该怎么做

例如这种格式

2019 apr [发布1,发布2]可能[发布1,发布2]

2018年4月[第1篇,第2篇] 5月[第1篇,第2篇]


摇曳的蔷薇
浏览 239回答 2
2回答

慕娘9325324

您可以结合使用laravel雄性和Carbonuse Carbon\Carbon;$news = New::select('id', 'title', 'created_at')->get()->groupBy(function($date) {    return Carbon::parse($date->created_at)->format('Y');});

catspeake

默认情况下,我们只能使用主键进行分组。如果要添加具有其他属性的分组依据,则必须ONLY_FULL_GROUP_BY通过在以下代码上添加以下代码来启用sql模式config/database.php'mysql' => [    .....    'modes' => [        'ONLY_FULL_GROUP_BY',    ],推荐模式:'STRICT_ALL_TABLES','ERROR_FOR_DIVISION_BY_ZERO','NO_ZERO_DATE','NO_ZERO_IN_DATE','NO_AUTO_CREATE_USER','NO_ENGINE_SUBSTITUTION',启用该模式后,您可以在此处尝试查询,该查询按年份和月份返回结果组。DB::table('posts')->groupBy([DB::raw("MONTH(posts_date)"), DB::raw("YEAR(posts_date)")])->get();我希望这能帮到您
随时随地看视频慕课网APP
我要回答