随机选择记录
MySQL使用ORDER BY RAND()选择随机记录
SELECT
*
FROM
tbl
ORDER BY RAND()
LIMIT 1;MySQL使用INNER JOIN子句选择随机记录
MySQL使用变量选择随机记录
Last updated
SELECT
*
FROM
tbl
ORDER BY RAND()
LIMIT 1;Last updated
SELECT
*
FROM
table
ORDER BY RAND()
LIMIT N;SELECT
t.customerNumber, t.customerName
FROM
customers AS t
ORDER BY RAND()
LIMIT 5;SELECT
ROUND(RAND() * ( SELECT
MAX(id)
FROM
table)) as id;SELECT
t.*
FROM
table AS t
JOIN
(SELECT
ROUND(RAND() * (SELECT
MAX(id)
FROM
table )) AS id
) AS x
WHERE
t.id >= x.id
LIMIT 1;SELECT
t.customerNumber, t.customerName
FROM
customers AS t
JOIN
(SELECT
ROUND(RAND() * (SELECT
MAX(customerNumber)
FROM
customers)) AS customerNumber
) AS x
WHERE
t.customerNumber >= x.customerNumber
LIMIT 1;SELECT
table. *
FROM
(SELECT
ROUND(RAND() * (SELECT
MAX(id)
FROM
table)) random_num,
@num:=@num + 1
FROM
(SELECT @num:=0) AS a, table
LIMIT N) AS b,
table AS t
WHERE
b.random_num = t.id;