MySQL随机限制选择与表连接

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

我有一个简单的数据库(见图),我想随机检索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 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;