带有条件的mysql rand

时间:2011-04-12 09:33:49

标签: php mysql

请有人帮我解决此查询的正确语法。

我有,table1

id,   int
on,   tinyint - this can be 0 or 1
name, varchar(2000)

由此我尝试获得10个随机id / nameon设置为1。

我应该使用什么查询?

4 个答案:

答案 0 :(得分:4)

SELECT id, name FROM table1 WHERE `on` = 1 ORDER BY RAND() LIMIT 0,10;

答案 1 :(得分:2)

这应该有效:

SELECT id,name FROM table1
WHERE `on`=1
ORDER BY RAND()
LIMIT 0,10

已编辑:指出, 列可能会导致语法错误而无需反引号

答案 2 :(得分:2)

试试这个:

SELECT id,name FROM table1 WHERE `on`=1 ORDER BY RAND() LIMIT 0,10

答案 3 :(得分:0)

SELECT `id`, `name` FROM `table1`
WHERE `on` = 1
ORDER BY RAND()
LIMIT 0,10

使用反引号来分隔字段名称。在这种情况下,您实际拥有WHERE条件,因为“ON”是一个关键字。

相关问题