dongxia4880 2018-01-03 14:37
浏览 39
已采纳

Laravel orderBy备份字段incase primary是重复的

Working on a queuing system that allows users to book appointments.

There is a slight issue at the moment where two appointments can get the same value for a field of 'estimated_booking_time'. This time is used to show when they are coming up.

The problem is that when fetching all appointments the ones with a duplicate estimated_booking_time are then ordered by their ID which (depending on when the appointment was booked) can sometimes be in a reverse order.

Im using carbon to create a diffInMinutes return on another field but the where the ID is the backup order my results are not always correct.

Is there a way to tell Laravel instead to use another field as the backup orderby field when there are duplicate values?

  • 写回答

1条回答 默认 最新

  • doupu3635 2018-01-03 14:44
    关注

    You can invoke orderBy multiple times.

    Booking::orderBy('estimated_booking_time', 'ASC')->orderBy('created_at', 'ASC')->get();

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?