次のクエリがあります。
select @rownum:=@rownum+1 ‘rank’, pgid, picfile from pages,
(SELECT @rownum:=0) r
where pos = 23
order by Rand()
limit 4
これにより、データベースから画像ファイル名が選択され、行番号が割り当てられます。残念ながら、Rand() による順序はこれらの行をランダム化するため、画像の行番号は常に同じですが、「ランク」フィールドはランダムに並べられます。
rank picfile
3 c.jpg
1 a.jpg
4 b.jpg
2 d.jpg
私が望むのは、「ランク」の順序は常に1、2、3、4、5ですが、picfile名はランダムに並べられることです
rank picfile
1 a.jpg
2 d.jpg
3 c.jpg
4 b.jpg
次にクエリを実行するときは、たとえば....
rank picfile
1 b.jpg
2 d.jpg
3 a.jpg
4 c.jpg
ちゃんと説明できて良かったです!
期待に感謝しますクリス