现在你可以看到如果输入了关键字,我在上面使用的查询是这样的:
SELECT * FROM Question WHERE QuestionContent LIKE '%$each%';
现在我在数据库中有 25 行包含关键字“问题”,所以如果我在搜索框中输入关键字“问题”,我会在输出中显示 25 行,这是正确的。
问题是我需要将其他表内部连接到查询中,因为将来我需要能够查看其他表中字段的行,所以我将查询更改为以下内容:
SELECT * FROM Answer a
INNER JOIN Question q ON a.QuestionId = q.QuestionId
JOIN Reply r ON q.ReplyId = r.ReplyId
WHERE QuestionContent LIKE '%$each%';
现在,如果我再次搜索“问题”这个词,我最终会在结果中显示 125 行,而不是 25 行。为什么要这样做,有人知道如何解决这个问题吗?
以下是问题表字段:
QuestionId, QuestionContent, ReplyId
以下是答案表字段:
QuestionId, Answer
以下是回复表字段:
ReplyId, ReplyType