该表有一个config.setAutoIndex("validate");
类型的startDate列,因此需要使用此列按升序获取行。
试过这个:
VARCHAR
上面没有返回正确的顺序,如何按clouse顺序传递字符串日期?
示例:
orderBy(DB::raw("DATE(startDate)"), 'ASC')
'startDate' => '07-Nov-2017'
答案 0 :(得分:1)
您需要将日期转换为MySQL格式。尝试使用DATE_FORMAT
:
$items = DB::table("mytable")
->orderBy(DB::raw("DATE_FORMAT(startDate,'%d-%M-%Y')"), 'ASC')
->where('userId','=',$userId)
->get();
答案 1 :(得分:0)
Gunaseelan是对的,但由于SYNhax错误,请尝试以下方法:
$items = DB::table("mytable")->where('userId','=',$userId)->orderByRaw("DATE_FORMAT('d-m-Y',startDate), ASC")->get();