1

テーブルから最新の 3 つの行から 1 つを選択するにはどうすればよいでしょうか。

私はこれを持っています:

"SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3"

私は考えました:結果を配列に保存し、ランダムな0〜2を配列から選択しますが、行が多いため機能しません。

4

3 に答える 3

2

私の理解が正しければ、最新の 3 つからランダムに 1 つを選択する必要があります。サブクエリを試してください。

SELECT * FROM (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) t ORDER BY RAND() LIMIT 1
于 2013-02-06T18:15:50.077 に答える
2
SELECT * FROM
    (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) last_three
ORDER BY RAND() LIMIT 1;
于 2013-02-06T18:15:52.680 に答える
1

SELECT * FROM (SELECT * FROM blog_content ORDER BY id DESC LIMIT 0,3) AS recentBlogs ORDER BY RAND() LIMIT 1

私のために働いた。

于 2013-02-06T18:23:32.223 に答える