简体   繁体   English

在条件中选择MySQL中的随机行

[英]Select random row in MySQL with condition

I would like to know if it's possible to select random row with special condition... 我想知道是否可以选择具有特殊条件的随机行...

I explain myself: 我向自己解释:

select 3 row with attribut isTrue = 0 but in my 3 row i want one with isTrue = 1 选择属性为isTrue = 0的3行,但在我的3行中,我希望isTrue = 1的那一行

I've a table "reponse" like: 我有一个表“响应”,如:

Table Reponse 表响应

I would like to do something like that: 我想做这样的事情:

SELECT * FROM reponse 
WHERE isTrue = 0 (and one of row(isTrue = 1)
ORDER BY RAND()
LIMIT 3

I don't know if you realy understood what i want to do PS: I'm french 我不知道您是否真的了解我想做什么PS:我是法国人

Solution: 解:

(SELECT * FROM reponse WHERE isTrue = 1 ORDER BY RAND() LIMIT 1) union all (SELECT * FROM reponse WHERE isTrue = 0 ORDER BY RAND() LIMIT 2) ORDER BY RAND() (选择*来自响应WHERE isTrue = 1 ORDER BY RAND()限制1)合并所有(选择*来自响应WHERE isTrue = 0 ORDER BY RAND()限制2)ORDER BY RAND()

Thank you very much Evgeny !! 非常感谢叶夫根尼!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM