私は MySQL に比較的慣れていないため、テーブルを 3 つの列でソートするのが困難です。
これは何千もの動画のデータを保存したデータベースであり、ユーザーにおすすめの動画を一覧表示するタブを Web サイトに作成したいと考えています。
可能であれば、「キー」列によって自動インクリメントされた、最近追加された最後の 100 個のビデオ (レコード) のみを並べ替えるのが最適です。
順序付けされた 100 のレコードのうち、実際にはデータベースから 5 つのレコードのみを取得し、それらを PHP 変数に格納します。
次のように列を並べ替えようとしています。
key DESC
rating_score DESC
view_count DESC
以前、動画を 2 つの列で並べ替える別の MySQL ステートメントを使用しました。
SELECT `title`, `duration`, `rating_score`, `imageurl`, `player_url` FROM (SELECT * FROM `archived_videos` ORDER BY `key` DESC LIMIT 0,210) AS ttbl ORDER BY `rating_score` DESC
3 つの列でソートする上記の MySQL ステートメントの現在および修正されたバージョンは、次のように記述されます。
SELECT `title`, `duration`, `rating_score`, `imageurl`, `player_url` FROM ((SELECT * FROM `archived_videos` ORDER BY `key` DESC LIMIT 0,100) AS ttbl (SELECT * FROM `archived_videos` ORDER BY `view_count` DESC) AS ttbl) ORDER BY `rating_score` DESC LIMIT 0,5
MySQL に精通している人がこれを見ることができれば、あなたは命の恩人になるでしょう。