在php中使用随机mysql不能随机id?

Hai*_* IT 0 php mysql

我有一个示例代码

products(id, name)
1 | Apple
2 | Sony
3 | Nokia
4 | Samsung
5 | LG
6 | Motorola
7 | Ekricson
Run Code Online (Sandbox Code Playgroud)

和mysql:

SELECT id, name FROM `products` AS prod 
ORDER BY RAND(prod.id) LIMIT 5
Run Code Online (Sandbox Code Playgroud)

当我运行代码时,结果是:

4 | ...
7 | ...
1 | ...
5 | ...
6 | ...
Run Code Online (Sandbox Code Playgroud)

但接下来......的结果是:

4 | ...
7 | ...
1 | ...
5 | ...
6 | ...
Run Code Online (Sandbox Code Playgroud)

当随机运行时,我不会改变,如何修复ix

pon*_*cha 7

你应该使用ORDER BY RAND()而不是ORDER BY RAND(prod.product_id)

来自RAND手册:

RAND(), RAND(N)

Returns a random floating-point value v in the range 0 <= v < 1.0.
If a constant integer argument N is specified, it is used as the seed value
which produces a repeatable sequence of column values.
Run Code Online (Sandbox Code Playgroud)