如何在 mysql 中加入 3 table 并得到结果?

How to Join 3 table in mysql and get result?

我有 3 个 mysql 表,我想在其中加入它们并获得一些结果。当我尝试这样做时,我在 mysql 查询语法中遇到错误。

这是我的查询语法

select t.id,t.surveyId,t.questionId,t.ansId,t.freeText,t.respondentId,GROUP_CONCAT(CAST(t.ansId AS CHAR) SEPARATOR '~') as ansIds 
from t_survey_responses t 
join t_survey_questions q 
where t.surveyId=336 and t.respondentId=724 and q.questionId=t.questionId 
join t_repondents r on r.respondentSrcId=992762407447511 
group by t.questionId 
order by q.pageNo asc,q.sortOrder asc

谢谢

我在您的 from 子句中只看到两个表。此外,当您选择如此多的列时,该分组依据将不起作用。也可能是强制转换和串联的语法问题。给我们一个错误 code/message!!!

所有 join 条件都应该在 where 子句之前:

select t.id,t.surveyId,t.questionId,t.ansId,t.freeText,t.respondentId,GROUP_CONCAT(CAST(t.ansId AS CHAR) SEPARATOR '~') as ansIds 
from t_survey_responses t 
join t_survey_questions q 
join t_repondents r on r.respondentSrcId=992762407447511 -- Here!
where t.surveyId=336 and t.respondentId=724 and q.questionId=t.questionId 
group by t.questionId 
order by q.pageNo asc,q.sortOrder asc