我有一个可点击的问题列表,我希望在这个问题中打开一个新页面,并显示一个选项列表,可以从测验或测试中进行选择。
让我们说在数据库中,TableQuestions保存了问题,TableAnswers保存了可能的选项。 Answers表还包括Questions表中的ID,以确定与每个问题相关联的选项。
然而,当我点击某个问题时,它会显示所有问题和数据库中的所有答案,我只想显示我点击的问题以及与问题具有相同ID的答案。
这是我的SELECT语句:
("SELECT tableQuestions.*, tableAnswers.* FROM tableQuestions, tableAnswers WHERE tableQuestions.question_id=tableAnswers.question_id");
有人可以协助吗? 感谢
答案 0 :(得分:1)
好像你忘了在SQL中添加点击问题的ID,所以你得到了所有的问题。
此外,您在此处执行的操作(从2个表中获取数据)称为加入表,而更好的语法是JOIN ... ON
部分中的FROM
。
SELECT tableQuestions.*, tableAnswers.* FROM tableQuestions INNER JOIN tableAnswers
ON tableQuestions.question_id=tableAnswers.question_id
WHERE tableQuestions.question_id = <id>
答案 1 :(得分:0)
除了Yossi的答案之外:你应该使用LEFT JOIN,INNER JOIN的insdead。这将允许您显示没有答案的问题。