私が取得したいのは、同じクエリで最も評価の高い 8 つの投稿 (posts.rates) と最も閲覧された 8 つの投稿 (posts.views) をテーブルから投稿するため、16 件の結果が得られます。両方のフィールドが同じテーブルにあります。そのため、遅く、実際にそれを行う方法がわかりません。前もって感謝します。
16行を取得して、1つのクエリで以下のようなことをしたくありません:
SELECT id FROM posts
ORDER BY rates DESC
LIMIT 0,8;
SELECT id FROM posts
ORDER BY views DESC
LIMIT 0,8;
編集:答え:
SELECT id FROM (SELECT id FROM posts ORDER BY views DESC LIMIT 0,8) AS a
UNION ALL
SELECT id FROM (SELECT id FROM posts ORDER BY rates DESC LIMIT 0,8) AS b