sql >> Databáze >  >> RDS >> Mysql

Laravel :Jak vzít posledních n (libovolný počet) řádků po seřazení ve vzestupném pořadí?

Jste velmi blízko.

Zní to, jako byste chtěli nejprve seřadit pole sestupně

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

ale pak otočte pole. Můžete to udělat jedním ze dvou způsobů, buď tradičním PHP (pomocí array_reverse).

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

Nebo laravelským způsobem pomocí reverse funkce v Laravel's Collection třída.

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

Podívejte se na Laravelovu Collection dokumentaci na jejich webu API na http://laravel.com/api/class -Illuminate.Support.Collection.html

Nyní bude $dates obsahovat požadovaný výstup.

dunno,time3
world,time4
hihio,time5


  1. Řetězec dotazu MySQL obsahuje

  2. Data MySQL obsahují speciální znaky jako š a ć, ale zobrazují se jako '?' na webové stránce. Proč?

  3. SQL:jak byl v tomto případě vytvořen dotaz v pořadí SQL

  4. Jak použít klauzuli Haveing ​​with Group by in Select Query - SQL Server / TSQL Tutorial, část 131