나는 MS Access에서이 쿼리를 실행하는 경우 :임의의 두 배로 결과
SELECT q2.questionText, Answers.answerText
FROM Questions q2 INNER JOIN Answers ON q2.questionID = Answers.questionID
WHERE q2.questionID IN (SELECT TOP 15 q.questionID
FROM Questions q
ORDER BY RND(q.questionID));
가끔 두 배로 업 얻을 answerText 행.
SELECT TOP 15 a.questionID
FROM Questions a
ORDER BY RND(a.questionID)
을 그리고 위의 슈퍼 쿼리에서 숫자를 사용 :이의 출력에서 숫자의 목록을 만들 경우 예상대로 작동
SELECT q2.questionText, Answers.answerText
FROM Questions q2 INNER JOIN Answers ON q2.questionID = Answers.questionID
WHERE q2.questionID IN (125, 7, 44, 119, 85, 189, 159, 167, 11, 50, 23, 96, 18, 99, 121);
합니다. 나는 두 개의 questionID 필드에서 참조 무결성을 시행하고있다. 나는 반복적으로 테이블을 삭제하고 행을 추가 한 텍스트 파일 내보내기에서 테이블을 다시 가져 왔습니다. 어떻게 고치는 지?
동일한 questionID에 대해 복수 응답이 없다고 확신합니까? – grahamj42
경우에 따라 "예"및 "아니요"행 대신 "아니오"라고 표시됩니다. 때로는 질문에 대한 모든 가능한 답변의 1/2를 얻을 수 있습니다. –
항상 15 개의 행을 사용합니까? 즉 TOP 15가 부속 조회가 아닌 전체 결과 세트에 적용됩니다. 복잡한 쿼리에서는 액세스가 완벽하지 않습니다. 그러나 문제는 훨씬 더 심한 곳이었습니다. – grahamj42