How can I orderBy
date in laravel/mysql only if the date
is future date
and default to latest
for past dates
?
For example:
// Suppose Current Date: 2018-10-03
- Example A = Ends At (past): 2018-10-01, Created At: 2018-10-03
- Example B = Ends At (past): 2018-10-02, Created At: 2018-10-02
- Example C = Ends At (future): 2018-10-04, Created At: 2018-10-01
- Example D = Ends At (future): 2018-10-05, Created At: 2018-09-30
My current query is (column is ends_at
):
Example::orderByRaw('isnull(ends_at), ends_at desc')->latest()->get();
Resulting to:
- Example D
- Example C
- Example B
- Example A
Expected result:
- Example D
- Example C
- Example A
- Example B
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire