#laravel #laravel-5 #eloquent
#laravel #laravel-5 #красноречивый
Вопрос:
У меня есть таблица «статьи» (модель: Article), где есть поле с именем «просмотр страницы». У каждой статьи разное количество просмотров страниц. Я хочу извлечь те строки, которые содержат 10 лучших просмотров страниц. Как я могу извлечь эти данные с помощью eloquent?
Ответ №1:
Вы можете сначала упорядочить статьи по порядку DESC, а затем извлечь 10 записей модели. Попробуйте это!
$articles = Article::orderBy('pageview', 'DESC')->take(10)->get();
Ответ №2:
Вы можете сделать это с помощью метода OrderBy, который упорядочивает данные. следовательно, вам нужны 10 лучших просмотров страниц, вы можете это сделать.
orderBy('PageView','desc')
Теперь вам нужно взять только 10, поэтому используйте метод take(). На самом деле это означает ограничение в MySQL. вот ваш код
Article::orderBy('PageView','desc')->take(10)->get();
Запрос Mysql теперь
select * from articles order by PageView desc limit 10
Ответ №3:
Это сделает свое дело:
Article::orderBy('PageView','Desc')->take(10)->get();
Ответ №4:
Article::orderBy('PageView','DESC')->take(10)->get();
или (без имени столбца)
Article::latest()->take(10)->get();