MySQL随机限制选择与表连接
我有一个简单的数据库(见图),我想随机检索10个问题及其所有答案(每个问题2-4个答案)。我尝试了多次查询,但似乎都不正确 我尝试过的事情:MySQL随机限制选择与表连接,mysql,sql,database,Mysql,Sql,Database,我有一个简单的数据库(见图),我想随机检索10个问题及其所有答案(每个问题2-4个答案)。我尝试了多次查询,但似乎都不正确 我尝试过的事情: SELECT qa.Answerid,qa.Questionid FROM question_answer as qa JOIN (SELECT q.Questionid FROM question q ORDER BY rand() LIMIT 10) WHERE qa.Questionid = q.Questionid select * From q
SELECT qa.Answerid,qa.Questionid
FROM question_answer as qa
JOIN (SELECT q.Questionid FROM question q ORDER BY rand() LIMIT 10)
WHERE qa.Questionid = q.Questionid
select *
From question q,question_answer qa,answer a
where qa.Questionid=q.Questionid and qa.Answerid=a.Answerid
ORDER BY rand() LIMIT 10
我需要如下结果:
AnswerId QuestionId ... ... ...
最多10个随机问题ID,答案ID的数量将根据10个随机问题的答案数量而变化
感谢您的帮助。使用
问题
上的子查询获取10个问题,然后加入答案中:
select *
From (select q.*
from question q
order by rand()
limit 10
) q join
question_answer qa
on qa.Questionid = q.Questionid join
answer a
on qa.Answerid = a.Answerid;
使用问题
上的子查询获取10个问题,然后在答案中加入加入
:
select *
From (select q.*
from question q
order by rand()
limit 10
) q join
question_answer qa
on qa.Questionid = q.Questionid join
answer a
on qa.Answerid = a.Answerid;