我正在尝试显示查询中的月份名称,但未打印出来。
下面是我的查询:
$stats = DB::table('leadsheet')
->whereYear('created_at', '>=', $days)
->groupBy('month')
->orderBy('month', 'ASC')
->get([
DB::raw('MONTH(created_at) as month'),
DB::raw('COUNT(*) as value')
]);
我的 json 数据如下:
[{"month":1,"value":380},{"month":2,"value":2146},{"month":3,"value":2008},{"month":4,"value":1399},{"month":5,"value":1719},{"month":6,"value":4497},{"month":7,"value":911},{"month":8,"value":495},{"month":9,"value":691},{"month":10,"value":370},{"month":11,"value":479}]
在这个结果中,我只想将数字 1 显示为一月,将数字 2 显示为二月,依此类推......但我试图给出没有发生的月份的格式。
所需的输入如下:
{"month":Jan,"value":380}...
谁能帮帮我?
最佳答案
你可以使用CASE EXPRESSION
:
CASE MONTH(created_at) WHEN 1 THEN 'JAN'
WHEN 2 THEN 'FEB'
...
END as `month`
或者,您可以使用 MONTHNAME()
.
关于mysql - 从 laravel 5 中的查询中获取月份名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41017569/