我想使用Laravel/Eloquent从MySQL表中的日期字段生成一个月份列表。
如何对查询进行分组并生成月份列表?
该列表用于选择字段,以便以后每月筛选条目。
id user_id garage_id date time
1 1 23 2015-09-11 02:23:00
5 1 17 2015-09-07 03:36:00
6 1 136 2015-08-02 23:22:00
7 1 83 2015-08-13 14:56:00
8 1 3 2015-07-16 14:58:00
9 1 67 2015-07-09 10:51:00谢谢Mirko
发布于 2015-09-16 18:16:42
您可以在DB查询上使用groupBy(),这实际上会给出一个唯一值的列表。
$unqiue_dates = DB::table('your_table')
->where('some_condition','=','if you like')
->groupBy('created_at') // or whatever date field
->get();然后,将此数据传递到Laravel刀片模板后,您可以遍历它们,如下所示:
<select>
@foreach ($unique_dates as $date)
<option>{{ date('F', strtotime($date)) }}</option>
@endforeach
<select>使用'F‘作为格式字符可以提供完整的文本表示形式,例如一月。
发布于 2015-09-17 18:05:33
我在Laravel和Eloquent之外找到了一个解决方案:
从cp_dbcarsharing GROUP BY MONTH(date)中选择MONTHNAME(日期)作为月份
现在我根据我的情况调整它;)
谢谢
https://stackoverflow.com/questions/32604154
复制相似问题