1

我想RAND()在查询中使用能够执行以下操作:

ODER BY id DESC并允许RAND()在表中的最后 3 个插入行之间进行选择。在页面刷新时,前端函数 rand 将在 5 - 8 之间进行选择(在表格示例中)并显示这些数字之间的任何数据。

查询示例

function rand()
{
    $sth = $this->db->prepare("SELECT rows FROM table ORDER BY id LIMIT 1");
    $sth->execute();

}

表格示例

+--------------+
| id |   name  |
+--------------+
|  1 |    Jon  |
|  2 |  Sarah  |
|  3 | Stevie  |
|  4 |   Stew  |
|  5 |   Dave  |
|  6 |    Kar  |
|  7 |  Stevo  |
|  8 |  Blake  |
+----+---------+

编辑

+----+ | 编号 | +----+ | | | | | | | | | | | | | | | || |

4

2 回答 2

1

如果我正确理解你的问题,我认为你需要这个:

SELECT id, name
FROM
  (SELECT id, name FROM table ORDER BY id DESC LIMIT 3) s
ORDER BY rand()
LIMIT 1
于 2013-11-14T21:32:32.153 回答
0

你有没有试过这个:

SELECT name
FROM users
ORDER BY RAND()
LIMIT 3

http://davidwalsh.name/mysql-random

于 2013-11-14T21:12:30.960 回答