mysql随机条件

时间:2011-03-23 19:24:25

标签: mysql

我在mysql中有一个表,比如table1。

我正在运行它:

SELECT FLOOR( MAX(id) * RAND()) FROM `table1`

这很好用,但我现在正试图添加“AND tom”的条件。

其中tom是整数字段。

例如:

id tom
1   0
2   3
3   2
4   0
5   0
6   3
7   1
8   1
9   3

所以,我的问题是,

如何从id中选择一个随机值,这也满足tom ='0'说?

3 个答案:

答案 0 :(得分:2)

SELECT id FROM `table1` WHERE tom = 0 ORDER BY RAND() LIMIT 1

这将首先获取tom = 0中的所有行,然后对这些结果randomly进行排序。然后MySQL将这些结果限制为只有一个,返回你想要检索的单个值。

答案 1 :(得分:1)

我希望我理解正确:

SELECT id FROM `table1` WHERE tom = 0 order by rand() limit 1

答案 2 :(得分:0)

select * from (
select * from table where tom = 0 ) as t order by rand() limit 1