如果我在 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 字段上强制执行参照完整性。我一直在反复删除表并从添加行的文本文件导出中再次导入它们。怎么修?