まず、貧しい私の英語は申し訳ありません。
5つの記事で最高の視聴回数を得たいです。 私はそれを試しましたが、私はEloquentクエリーに問題があります。Laravel5 Eloquent:特殊な状態からいくつかの記事を入手するには?
laravelソース
<?php
$up = "SELECT id FROM articles WHERE id IN (SELECT id from (SELECT id FROM articles ORDER BY view_count DESC LIMIT 0,5) x)";
$builder = new \App\Article;
$query = $builder->selectRaw("articles.*, $up");
?>
@forelse($query->latest() as $article)
<img src="{{ $article->thumbnail }}" alt="{{ $article->title }}" title="{{ $article->title }}">
@empty
<p class="text-center text-danger">
empty...
</p>
@endforelse
DBクエリ結果
MariaDB [test]> SELECT id FROM articles WHERE id IN (SELECT id from (SELECT id FROM articles ORDER BY view_count DESC LIMIT 0,5) x);
+------+
| id |
+------+
| 4018 |
| 4045 |
| 3800 |
| 4011 |
| 4005 |
+------+
5 rows in set (0.00 sec)
私はこのトピックに関する他の記事を見てきましたが、私は解決策を取得できませんでした。
ご協力いただきありがとうございます。あなたは自分のコントローラ内で記述する必要がビューによって命じ
多分あなたはこの https://laravel.com/docsをチェックアウトする必要があります/5.5/eloquent#retrieving-シングルモデル かなりお役に立ちました – BARNOWL
あなたのコードはきれいではない、真剣にlaravel docsを見てください。 – BARNOWL
なぜ2つのサブクエリ?内側のクエリは、使用しているクエリと同じ結果を返しません。 – rypskar