テーブルから最新の 3 つの行から 1 つを選択するにはどうすればよいでしょうか。
私はこれを持っています:
"SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3"
私は考えました:結果を配列に保存し、ランダムな0〜2を配列から選択しますが、行が多いため機能しません。
テーブルから最新の 3 つの行から 1 つを選択するにはどうすればよいでしょうか。
私はこれを持っています:
"SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3"
私は考えました:結果を配列に保存し、ランダムな0〜2を配列から選択しますが、行が多いため機能しません。
私の理解が正しければ、最新の 3 つからランダムに 1 つを選択する必要があります。サブクエリを試してください。
SELECT * FROM (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) t ORDER BY RAND() LIMIT 1
SELECT * FROM
(SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) last_three
ORDER BY RAND() LIMIT 1;
SELECT * FROM (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) AS recentBlogs ORDER BY RAND() LIMIT 1
私のために働いた。