sql >> Database teknologi >  >> RDS >> Mysql

Laravel :Hvordan tager man de sidste n (et hvilket som helst antal) rækker efter at være bestilt i stigende rækkefølge?

Du er meget tæt på.

Det lyder som om du først vil bestille arrayet efter faldende rækkefølge

  Model::orderBy('created_at','desc')->take(3);

men vend derefter arrayet om. Du kan gøre dette på en af ​​to måder, enten den traditionelle PHP (ved at bruge array_reverse).

  $_dates = Model::orderBy('created_at','desc')->take(3);
  $dates = array_reverse($_dates);

Eller laravel-måden, ved at bruge reverse funktion i Laravels Collection klasse.

  $_dates = Model::orderBy('created_at','desc')->take(3)->reverse();

Tjek Laravels Collection dokumentation på deres API-sted på http://laravel.com/api/class -Illuminate.Support.Collection.html

Nu vil $dates indeholde det output, du ønsker.

dunno,time3
world,time4
hihio,time5


  1. Henter data fra MySQL-database til html-rulleliste

  2. Multiple master replikering til enkelt slave i Mysql

  3. Sådan gemmer du html i en mysql-database

  4. SQL-fejl:ORA-02291:integritetsbegrænsning