2017-01-27 16 views
0

誰かがこのクエリで私を助けてくれますか?順序乱数

質問:

  • ID - AUTONUM
  • 質問 - メモ
  • カテゴリー - 整数(1-5)

回答:

  • ID - AUTONUM
  • FID - 整数
  • 回答 - メモ

一つの疑問は、多くの可能な答え

私はランダムな順序でカテゴリ1位からすべての質問が表示されますクエリを必要としています。それぞれの質問の後、それは可能な回答もランダムな順序で表示されます。それからカテゴリー#2のようにそれを行います。ここで

は、私がこれまで持っているものです。

SELECT Questions.ID, Questions.Question, Questions.Category, Answers.Answer 
FROM Questions INNER JOIN Answers ON Questions.ID = Answers.FID 
ORDER BY Questions.Category, RND(Questions.ID); 

それは正しく一緒にすべてのカテゴリを保持しますが、残りはランダムです。質問のIDを一緒に(しかしランダムな順序で)保持する方法はわかりませんが、回答の順序もランダムにしています。

答えて

0

Hmmm。サブクエリが役立つかもしれないと思います。

SELECT q.ID, q.Question, q.Category, a.Answer 
FROM (SELECT q.*, rand() as rnd FROM Questions q) q INNER JOIN 
    Answers a 
    ON q.ID = a.FID 
ORDER BY q.Category, q.rnd, rand(); 
+0

すごく速いです! :-) – user1429080

+0

速い応答のためのTYVM! MSAccessの場合、「rand()」を「RND()」に、「rnd」を「rand」に変更しました。実行されますが、Questions.IDはグループ化されていません。 – user2182715

+0

@ user2182715 。 。あなたの質問は「ms-access」ではなく「mysql」とタグ付けされています。 –